在一个 Power BI 可视化中应用顶部和底部 N

Applying top and bottom N in one Power BI visualization

Power BI 上的图表和视觉效果可以过滤到前 n 条记录,以便更轻松地生成一目了然的报告。但是,如果我想报告最高和最低记录(例如:最高 10 美元和最低 10 美元金额),我需要放置两个视觉效果。这会消耗更多报告 space 并破坏页面的凝聚力。

有没有办法 select 在一个图表中使用两个数据子集来进行此类报告?

这是我拼凑的示例数据。

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

Total Amount = SUM(Data[Amount])

据此我创建了一个新的衡量标准,基本上将每一行标记为前 3 或后 3 行(您可以更改数字以满足您的需要)。

此度量首先检查是否有 Total Amount 和 "removes" 的值,任何具有空白值的值 ("removes" 通过将标志设为空白,因此永远不会包含在任何过滤等)。

TopBottom = 
    IF(
        ISBLANK([Total Amount]),
        BLANK(),
        IF(
            RANKX(ALL(Data), [Total Amount], , ASC) <= 3 || RANKX(ALL(Data), [Total Amount], , DESC) <= 3,
            1,
            0
        )
    )

获得排名标志度量后,您可以将其添加到视觉对象中,然后过滤到度量为 1 的位置。

全部完成后,您应该有一个只显示您关心的条目的视觉效果。这是带有可见标志的完整数据列表以及应用过滤器时产生的 table。

将此视为对已接受答案的轻微改进。有了这个,您无需在想要更改要查看的数量时更改公式。

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

RankTopBottom = RANKX(ALL(Data), [Total Amount], , ASC) * 
                RANKX(ALL(Data), [Total Amount], , DESC)

它使用的原则与已接受的答案基本相同,但我们没有使用 IF,而是将两个排名相乘。最小值将是边缘,最大值将是中间。

所以,过滤的时候,用"bottom"N,挑一个偶数。 (或者如果您想要 "top" N,则添加一个负号)

逆秩相乘的快速结果: