数据可视化之powerBI技巧(四)使用Power BI制作帕累托图

时间:2024-03-11 19:41:07

各种复杂现象的背后,其实都是受关键的少数因素和普通的大多数因素所影响,把主要精力放在关键的少数因素上,就能达到事半功倍的效果。

这就是大家常说的二八原则,也称为帕累托原则,最早是由意大利经济学家 V.Pareto 提出的,他在研究个人收入的分布状态时,发现少数人的收入占全部人收入的大部分,而多数人的收入却只占一小部分,他将这一关系用图表展示出来,就是著名的帕累托图。

 

 

帕累托图可以轻松体现并分析出一个现象的关键影响因素,现在广泛应用于各类商业和社会活动中。用帕累托图进行分析也成为帕累托分析,或者ABC分析,下面就来看一下在 PowerBI 中如何制作帕累托图。

 

01 | 数据准备

 

依然使用上一篇文章的数据,假设A公司经营9种产品,每种产品贡献的利润如下:

 

 

 

 

先计算每种产品利润的占比,新建度量值,

 

利润额 = SUM(\'产品\'[利润])
占比 = DIVIDE([利润额],CALCULATE([利润额],ALL(\'产品\')))

 

然后可以在矩阵表中看到每一种产品的利润占比已经计算出来,

 

 

 

02 | 计算累计百分比

 

计算累计百分比是最关键的一步,不过有了上篇文章关于累计求和的铺垫,计算累计占比也很简单,我们使用var定义变量来创建[累计占比]的度量值,

 

累计占比 =
var cur_rate=[占比]
return CALCULATE([占比],FILTER(ALL(\'产品\'),[占比]>=cur_rate))

 

把[累计占比]拖入到矩阵中,

 

 

 

至此初步的数据的处理已经完成,下面来看看如何生成帕累托图。

 

03 | 创建帕累托图

 

可视化对象中并没有一个图被称为帕累托图,但是帕累托图实际上就是一个折线图和柱形图的组合,因此使用默认的可视化对象,折现和堆积柱形图或者折现和簇状柱形图都可以,

 

 

 

把[产品类别]作为共享轴,[利润]作为列值并按降序排列,[累计占比]作为行值,一个简单的帕累托图就出来了,

 

 

 

 

此图并没有什么特别之处,只是一个降序排列的柱形图和一个升序排列的百分比折线图而已。

 

可是通过这个简单的帕累托图可以直观的看出,前3个产品的贡献占比就约为80%,它们就是要找的核心产品,应重点对待,而其他产品的累计贡献却只有20%左右,在资源有限的情况下,就不应该花费太多精力放在这些产品上面。

 

上面的数据比较简单,好像一眼就能看哪些产品是主要因素,可是如果是成千上万个产品呢,并且企业的运营也不只是看产品的利润分析,还有销售分析、库存分析、应收账款分析,以及各个分子公司的情况分析等等,并且数据一直在随着时间而变化,在这种情况下,想快速找出哪些是关键的少数就没有那么简单了。

 

本文是制作一个静态的帕累托图,如果进行多维度的分析,一个动态的帕累托图就很有必要,这在PowerBI中也并不难实现。