加入 PowerBI自己学 知识星球 可以:下载源文件,边学边练;遇到问题,提问交流,有问必答。
波士顿矩阵(BCG Matrix),又称市场增长率-相对市场份额矩阵、波士顿咨询集团法、四象限分析法、产品系列结构管理法等,由波士顿咨询公司创始人布鲁斯·亨德森于1970年创作。它通过在两个度量值上各分高低,交叉划分四个象限,业务或产品按所在象限定义类型(现金牛、明星、问题、瘦狗),进而匹配相应的战略决策。
解决方案
在PowerBI中,生成相对市场份额(市场份额相对最大市场份额的比值,将最大市场份额归一化处理,更利于查看分布情况)和同比增长率2个度量值,使用气泡图进行可视化,增加X轴和Y轴的参考线划分四象限,格式上可以增加背景色和图标等。
PowerBI制作的波士顿矩阵,具备以下特点:
1 相对市场份额和同比增长率的区隔可以自行设置;
2 支持动态筛选,比如筛选年份、区域等;
3 四个象限带背景色,兼容负增长率的情况。
涉及到的主要PowerBI技巧:
1 气泡图;
2 用堆积柱状图制作动态的四象限背景色;
3 数值范围参数。
举例
用如下模型数据,制作一个办公用品行业的波士顿矩阵。
模型
市场数据表
市场份额涉及到外部整个市场的数据,所以要有一份整个市场的数据。
度量值
销售额:
Sales = SUM('市场数据'[金额])
增长率:
Growth% =
VAR _vm_lastyear = CALCULATE([Sales],'Dim_Year'[年份]=SELECTEDVALUE('Dim_Year'[年份])-1)
RETURN DIVIDE([Sales]-_vm_lastyear,_vm_lastyear)
市场份额、各公司市场份额最大值、相对市场份额:
MarketShare = DIVIDE([Sales], CALCULATE([Sales],ALL(Dim_Company[公司])))
MarketShare_Max = MAXX(ALL(Dim_Company[公司]), [MarketShare])
MarketSahre_Relative = DIVIDE([MarketShare],[MarketShare_Max])
象限分类:
Mark =
IF(ISINSCOPE(Dim_Category[品类]),
SWITCH(TRUE(),
[Growth%]>='市场增长率-区隔'[市场增长率-区隔 值] && [MarketSahre_Relative]>='相对市场份额-区隔'[相对市场份额-区隔 值],"明星",
[Growth%]>='市场增长率-区隔'[市场增长率-区隔 值] && [MarketSahre_Relative]<'相对市场份额-区隔'[相对市场份额-区隔 值],"问题",
[Growth%]<'市场增长率-区隔'[市场增长率-区隔 值] && [MarketSahre_Relative]>='相对市场份额-区隔'[相对市场份额-区隔 值],"现金牛",
"瘦狗"
)
)
增长率最大值*1.2、增长率最小值*1.2:
Growth%_Max = MAXX(ALLSELECTED(Dim_Category[品类]), [Growth%])*1.2
Growth%_Min =
VAR _vm_min = MINX(ALLSELECTED(Dim_Category[品类]), [Growth%])*1.2
RETURN IF(_vm_min>=0,0,_vm_min)
参数:
相对市场份额-区隔 = GENERATESERIES(0.01, 1, 0.01)
市场增长率-区隔 = GENERATESERIES(0.01, 5, 0.01)
相对市场份额-背景坐标轴 = GENERATESERIES(0, 1.2, 0.01)
操作步骤
STEP 1 在画布中添加散点图并拖入字段。
STEP 2 在格式窗格中,关闭背景色;设置Y轴的最大值和最小值,使用当前筛选下的增长率的最大值*1.2和最小值*1.2,避免边缘只显示半个气泡;使用相对市场份额-区隔和市场占有率-区隔参数增加2条参考线。
STEP 3 虽然不能直接在气泡图设置四象限的背景色,但是可以使用堆积柱状图,X轴放相对市场份额-背景坐标轴,配上6个随相对市场份额区隔参数和增长率变动的度量值,放入Y轴,Y5和Y6是考虑到增长率有负值的情况。
Y1 =
SWITCH(TRUE(),
SELECTEDVALUE('相对市场份额-背景坐标轴'[相对市场份额-背景坐标轴])>[相对市场份额-区隔 值],[Growth%_Max]-[市场增长率-区隔 值])
Y2 =
SWITCH(TRUE(),
SELECTEDVALUE('相对市场份额-背景坐标轴'[相对市场份额-背景坐标轴])<=[相对市场份额-区隔 值],[Growth%_Max]-[市场增长率-区隔 值])
Y3 =
SWITCH(TRUE(),
SELECTEDVALUE('相对市场份额-背景坐标轴'[相对市场份额-背景坐标轴])<=[相对市场份额-区隔 值],[市场增长率-区隔 值])
Y4 =
SWITCH(TRUE(),
SELECTEDVALUE('相对市场份额-背景坐标轴'[相对市场份额-背景坐标轴])>[相对市场份额-区隔 值],[市场增长率-区隔 值])
Y5 =
IF([Growth%_Min]<0,
SWITCH(TRUE(),
SELECTEDVALUE('相对市场份额-背景坐标轴'[相对市场份额-背景坐标轴])<=[相对市场份额-区隔 值],[Growth%_Min]*1.2))
Y6 =
IF([Growth%_Min]<0,
SWITCH(TRUE(),
SELECTEDVALUE('相对市场份额-背景坐标轴'[相对市场份额-背景坐标轴])>[相对市场份额-区隔 值],[Growth%_Min]*1.2))
STEP 4 在格式窗格中,将柱子的间隔调整为0;为了大小一致,背景图Y轴的最大值和最小值与气泡图做相同设置;按系列设置列的颜色,Y4和Y6颜色一致,Y3和Y5颜色一致;去掉各种标题、值;配上四种类型的图片或文字,置于最底层,调整两个图表的大小到完美重叠。
选择2022年,公司4,在切片器中设置两个区隔的值,可以查看该公司6个产品所处的象限和对应的类型列表。可以看出,此公司的现金牛品类是清洁、福利、文具,体量大、市场份额大、增长率低;明星品类仅电器,份额和体量还比较小,需加大资源投入;问题品类是零食,待观察;瘦狗品类是家具,可考虑关闭此业务。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。