Power Bi 中的红绿灯也适用于总数
Traffic lights in Power Bi which work also for totals
如何使交通灯在 table 视觉效果中也适用于总数?假设我们的 KPI 是某种比率或份额,例如 国家/地区人均 GDP ,或 与商店预算的差异 。为单个类别设置红绿灯很有趣,但为所有类别的摘要设置红绿灯会更有趣。
我遵循并显示了示例 here:
这个想法基于添加 DAX 度量:
TrafficLight = UNICHAR(11044)
然后我们根据其他列或度量设置红绿灯的条件格式。但条件格式似乎不会影响总数。如何让红绿灯同时显示红色、黄色、绿色?
编辑。 似乎是您可以投票支持的理想功能。请为它投票!
总数的红绿灯不能通过标准方法完成,但有一个解决方法。你可能会达到这样的效果:
思路基于以下几点:
- 有一个类别字典并为其添加值 "Total (avg)" 或根据您的意愿命名。
- 取消选中 table 视觉对象的格式窗格中的显示总计。
- 添加 DAX 度量,returns 普通标签的计算不同,"Total (avg)" 的计算不同。在此处使用
SWITCH(TRUE()...
请参阅底部的示例。
- 为方便起见,将 SortColumn 添加到您的类别字典中。这样您的 "Total (avg)" 将始终位于 table 视觉效果的底部,无论您如何命名您的总数。
- 遗憾的是,无法在条件格式中设置粗体。您只能玩背景和字体。根据应用于 SortColumn 的规则进行条件格式化。我将 "Total (avg)" 的背景变灰,并将字体设置为黑色。您必须为 table 中的每一列设置相同的条件格式。
- 在table视觉格式中为普通的凡人值设置一个略带灰色的字体。这样做是为了与上一点设置的总数的黑色字体形成更多对比。
以下是我使用的 DAX 指标:
测量:
KPI = SWITCH(TRUE(),
MAX(DimCountry[SortColumn]) = 999, [GDP per capita Total],
[GDP per capita]
)
总计:
GDP per capita Total = CALCULATE([GDP per capita], ALL(FactTable))
对于那些已经阅读到这里的人,这里是 pbix 文件供下载。
您 UNICHAR()
已经完成了一半。下一步是放弃 Power BI 中的条件格式。以下是可用于交通信号灯的三个 Unicode 字符。我从 Emojipedia 采购它们。这三个是 "red circle"、"yellow circle" 和 "green circle"。
RedLight = UNICHAR ( 128308 )
YellowLight = UNICHAR ( 128993 )
GreenLight = UNICHAR ( 128994 )
这些看起来像这样:
现在您已经有了 return 正确颜色的度量,您可以在具有您的范围逻辑的另一个度量中引用这些。这是一个示例。我用过你的度量名称。我的图像来自不同名称的演示工作簿。
Sales Amount KPI =
VAR SalesAmount = [SalesAmount]
RETURN
SWITCH (
TRUE (),
ISBLANK ( SalesAmount ), BLANK (),
SalesAmount < 50, [GreenLight],
SalesAmount < 150, [YellowLight],
[RedLight]
)
这利用了 SWITCH
,其中我们做了一些稍微聪明的事情。 SWITCH
测试其第一个参数是否与后续参数相等。通过针对 TRUE ()
进行测试,我们可以得到任意的布尔表达式。匹配表达式后面的值为 returned.
第一个测试,ISBLANK
是防止为所有维度值显示此 KPI 度量。它只会 return 具有基本度量数据的维度属性的值。
那么这只是定义我的 KPI 边界的一系列不等式测试,就像您在条件格式中所做的那样。
你可以想复杂就复杂。这是它的样子:
由于这只是一个常规度量 return 一个常规文本值,您可以在任何显示文本的地方使用它,包括卡片、多卡片、工具提示、表格和矩阵。该指标的总计水平没有什么特别之处。
自 2020 年 4 月 PBI 更新以来,这终于成为可能:
如何使交通灯在 table 视觉效果中也适用于总数?假设我们的 KPI 是某种比率或份额,例如 国家/地区人均 GDP ,或 与商店预算的差异 。为单个类别设置红绿灯很有趣,但为所有类别的摘要设置红绿灯会更有趣。
我遵循并显示了示例 here: 这个想法基于添加 DAX 度量:
TrafficLight = UNICHAR(11044)
然后我们根据其他列或度量设置红绿灯的条件格式。但条件格式似乎不会影响总数。如何让红绿灯同时显示红色、黄色、绿色?
编辑。 似乎是您可以投票支持的理想功能。请为它投票!
总数的红绿灯不能通过标准方法完成,但有一个解决方法。你可能会达到这样的效果:
思路基于以下几点:
- 有一个类别字典并为其添加值 "Total (avg)" 或根据您的意愿命名。
- 取消选中 table 视觉对象的格式窗格中的显示总计。
- 添加 DAX 度量,returns 普通标签的计算不同,"Total (avg)" 的计算不同。在此处使用
SWITCH(TRUE()...
请参阅底部的示例。 - 为方便起见,将 SortColumn 添加到您的类别字典中。这样您的 "Total (avg)" 将始终位于 table 视觉效果的底部,无论您如何命名您的总数。
- 遗憾的是,无法在条件格式中设置粗体。您只能玩背景和字体。根据应用于 SortColumn 的规则进行条件格式化。我将 "Total (avg)" 的背景变灰,并将字体设置为黑色。您必须为 table 中的每一列设置相同的条件格式。
- 在table视觉格式中为普通的凡人值设置一个略带灰色的字体。这样做是为了与上一点设置的总数的黑色字体形成更多对比。
以下是我使用的 DAX 指标: 测量:
KPI = SWITCH(TRUE(),
MAX(DimCountry[SortColumn]) = 999, [GDP per capita Total],
[GDP per capita]
)
总计:
GDP per capita Total = CALCULATE([GDP per capita], ALL(FactTable))
对于那些已经阅读到这里的人,这里是 pbix 文件供下载。
您 UNICHAR()
已经完成了一半。下一步是放弃 Power BI 中的条件格式。以下是可用于交通信号灯的三个 Unicode 字符。我从 Emojipedia 采购它们。这三个是 "red circle"、"yellow circle" 和 "green circle"。
RedLight = UNICHAR ( 128308 )
YellowLight = UNICHAR ( 128993 )
GreenLight = UNICHAR ( 128994 )
这些看起来像这样:
现在您已经有了 return 正确颜色的度量,您可以在具有您的范围逻辑的另一个度量中引用这些。这是一个示例。我用过你的度量名称。我的图像来自不同名称的演示工作簿。
Sales Amount KPI =
VAR SalesAmount = [SalesAmount]
RETURN
SWITCH (
TRUE (),
ISBLANK ( SalesAmount ), BLANK (),
SalesAmount < 50, [GreenLight],
SalesAmount < 150, [YellowLight],
[RedLight]
)
这利用了 SWITCH
,其中我们做了一些稍微聪明的事情。 SWITCH
测试其第一个参数是否与后续参数相等。通过针对 TRUE ()
进行测试,我们可以得到任意的布尔表达式。匹配表达式后面的值为 returned.
第一个测试,ISBLANK
是防止为所有维度值显示此 KPI 度量。它只会 return 具有基本度量数据的维度属性的值。
那么这只是定义我的 KPI 边界的一系列不等式测试,就像您在条件格式中所做的那样。
你可以想复杂就复杂。这是它的样子:
由于这只是一个常规度量 return 一个常规文本值,您可以在任何显示文本的地方使用它,包括卡片、多卡片、工具提示、表格和矩阵。该指标的总计水平没有什么特别之处。
自 2020 年 4 月 PBI 更新以来,这终于成为可能: