Power BI数据分析实战——柏拉图的制作

在公司也实习半年了,半年做了很多Dashboard,也经常用Tableau,但是我还是觉得Power BI更好用一些,可能比较适合小白,入门简单,很容易就能做出不错的Dashboard。

前一段时间老板让我做一组数据的柏拉图,之前也接触过柏拉图,不过都是在PPT上基于一个Excel表格做的柏拉图,如果数据有变动,需要经常去维护。事实上老板要看的这个柏拉图数据每天都会多一些,随着时间的推移,数据会变动很多,但不能每天都重新做一张Excel表格来做柏拉图,所以我想在Power BI上根据数据源做实时刷新数据的柏拉图,话不多说,上例子。

现有五组人员做生产,生产的不良数量如下:

班组不良数量
A25
B45
C18
D30
E28

我们要做柏拉图,必须要有两个数据,一个是所有的不良数量总和,作为分母,另一个就是每多一行就累加一次的数据作为分子,两者相除便是柏拉图的折线数据。所有不良数量的总和比较简单。做一个度量值为:

 

 接下来是分子怎么处理,处理分子时需要使用var创建虚拟的列表。此外,分子的处理需要用到两个函数,一个是CALCULATE,这个函数的作用是在筛选器修改的上下文中对表达式进行求值,这里的表达式是求和。还一个函数是FILTER,这个函数的作用是返回以筛选的表。有了这两个函数,就可以完成分子的构建了。 

累积百分比 = 
var number=[总和]  //创建虚拟列表放每行的的数据
var molecule=CALCULATE([总和],FILTER(ALL('Sheet1'[班组]),[总和]>=number))  
//创建虚拟列表存放每行的累加值
var denominator=CALCULATE([总和],ALL('Sheet1'[班组]))  
//筛选掉所有班组对不良件数求和存入虚拟列表
return DIVIDE(molecule,denominator)  //分子除以分母得出累积百分比

//运行过程如下:
//A组的不良数25存放到number,FILTER函数将表格中大于等于25的数据筛选出来,由CALCULATE函数将筛选出的数据求和,所以这里的molecule=25+28+30+45=128
//同理denominator的数据为整个班组表格的数据求和,也就是总和,所以这里denominator=146,且之后的denomination一直都是146
//最后一行代码通过DIVIDE除法函数,将分子除以分母得出每组的累积百分比度量值

 通过以上一段代码就可以实现每行数据的累积百分比,作为度量值计算后就可以放入Power BI的折线和柱状图使用了,使用效果如下:

 至此,整个柏拉图的制作过程就结束啦。

有不懂的欢迎评论区讨论

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

雪菲人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值