首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在一次Power BI可视化中应用top和bottom N

在一次Power BI可视化中应用top和bottom N
EN

Stack Overflow用户
提问于 2019-03-20 04:26:21
回答 2查看 4.6K关注 0票数 2

Power BI上的图表和可视化可以筛选到前n个记录,以便更轻松地进行一目了然的报告。但是,如果我想报告顶部和底部的记录(例如:前10和后10美元金额),我需要放置两个视觉效果。这会消耗更多的报告空间,并破坏页面的内聚力。

对于这种报告,有没有办法在一个图中选择两个数据子集?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-03-20 04:42:08

下面是我收集的示例数据。

最重要的是,我为Total Amount创建了一个简单的度量。

代码语言:javascript
复制
Total Amount = SUM(Data[Amount])

在此基础上,我创建了一个新的度量方法,将每一行标记为位于前3位或后3位(您可以根据需要更改数字)。

该度量首先检查是否存在Total Amount的值,并“删除”任何具有空值的值(通过将标志设置为空来“删除”,因此永远不会包括在任何过滤中或类似的内容中)。

代码语言:javascript
复制
TopBottom = 
    IF(
        ISBLANK([Total Amount]),
        BLANK(),
        IF(
            RANKX(ALL(Data), [Total Amount], , ASC) <= 3 || RANKX(ALL(Data), [Total Amount], , DESC) <= 3,
            1,
            0
        )
    )

一旦有了排名标志度量,您就可以将其添加到您的视觉中,然后过滤到度量为1的位置。

一旦这些都完成了,你应该有一个只显示你关心的条目的视觉效果。下面是完整的数据列表,其中包含可见标志和应用筛选器时的结果表。

票数 4
EN

Stack Overflow用户

发布于 2020-04-18 10:17:32

考虑到这是对公认答案的略微改进。使用此方法,无论何时想要更改要查看的数量,都不需要更改公式。

您需要更改的唯一控件是过滤器。

代码语言:javascript
复制
RankTopBottom = RANKX(ALL(Data), [Total Amount], , ASC) * 
                RANKX(ALL(Data), [Total Amount], , DESC)

它使用与公认答案基本相同的原则,但我们不使用IF,而是将两个排名相乘。最小的值将是边缘,最小的值将是中间。

因此,在过滤时,使用"bottom“N,并选择一个偶数。(或者如果您想要"top“N,则添加一个负号)

乘以逆序的快速结果:

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55249444

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档