PowerBI-ABC动态分类
Powerbi动态ABC分类
上周分享了powerbi 制作柏拉图和topN的图表,然后还可以更进一步,就是将ABC分类应用到图表上,然后展示出不同的颜色。
完成的效果如下,即可以拖动滑杆来调整ABC的百分比,图形则分为三种配色展示。
实现方法
建立一个参数表。这里建立一个序列,生成1到100的参数表
1
ClassRange = GENERATESERIES(1, 100, 1)
默认参数为单选,所以调整筛选器方式为
between
,就会变为两个值之间。然后我们要获取这个范围内的两个值,即一个上限,一个下限。1
2ClassA = DIVIDE( MIN(ClassRange[Parameter]),100) --获取筛选器最小值转换为百分比
ClassB = DIVIDE(MAX(ClassRange[Parameter]),100) --获取筛选器最大值并转换为百分比针对当前的筛选结果去进行分类。这里使用了上一篇文章里面的累积百分比和我们的值进行比较。
1
2
3
4ABC_Class = SWITCH(true,
[View_Kpi.per.acc]<=[ClassA],"A",
[View_Kpi.per.acc]<=[ClassB],"B",
"C")修改柱状图本身的配色函数。原有的配色仅修改了other为特殊颜色,现在根据分类的结果设置不同的颜色。
1
2
3
4
5
6
7
8
9
10View_kpi_auto_color =
var brand=SELECTEDVALUE(ALL_Brand[Brand])
VAR Class=[ABC_Class]
return
if(brand="Other","#FF0000",
SWITCH(TRUE,
Class="A","#41a4ff",
Class="B","#e8d166",
"#e48e95")
)
思考总结
最初在获取筛选器的值时,本来以为不可以直接用max
函数,后面才发现是自己的理解不足。在当前的view筛选下,动态参数已经自动调整了范围。所以获取比较简单。另外有一条就是尽量将dax写的简单一些,多一些调用即可。另外后面如果以ABC分类结果作为汇总展示,可能还要写一些计算列才能实现。
评论
评论插件加载失败
正在加载评论插件