4.3 PowerBI分析模板-动态波士顿矩阵

加入 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个产品所处的象限和对应的类型列表。可以看出,此公司的现金牛品类是清洁、福利、文具,体量大、市场份额大、增长率低;明星品类仅电器,份额和体量还比较小,需加大资源投入;问题品类是零食,待观察;瘦狗品类是家具,可考虑关闭此业务。

### Power BI 矩阵可视化组件使用教程 #### 创建矩阵可视化对象 为了在Power BI中利用矩阵可视化展示数据,需先从报表画布右侧的“可视化”窗格中选择矩阵图标。这会向报表画布添加一个新的空白矩阵可视化对象[^1]。 #### 准备字段布局 一旦选择了矩阵,则可以在“字段”窗格里拖拽所需的数据列到相应的区域。“行”用于定义纵向分组,“列”则负责横向分类,而“值”的部分用来放置度量或聚合后的数值字段。例如,在销售数据分析场景下,可以将产品类别置于行列位置,把时间维度放在列区,并且设置销售额作为值来观察不同时间段内各类产品的收入情况[^3]。 #### 调整格式化选项 通过点击矩阵右上方的小齿轮按钮进入格式设置界面,这里提供了丰富的自定义项以优化呈现效果。比如调整字体大小、颜色方案以及边框样式等外观属性;还可以控制总计显示方式——是否开启行/列合计数或是更改其计算逻辑。另外值得注意的是,当涉及到大量层次结构时,可以通过折叠级别特性简化查看体验。 #### 导出功能说明 对于已构建完成并满意的矩阵图表,如果希望将其分享给他人或者存档保存,那么就可以借助于导出至Excel的功能。只需选中目标矩阵再单击顶部菜单栏上的三个点标志,最后选取“Export data to Excel”,这样就能获得一份保留原有样式的电子表格文件了。 ```python # Python代码示例并非实际应用于Power BI操作, 只是为了示范如何书写代码块 def export_matrix_to_excel(matrix_name): """ 假设函数用于模拟导出指定名称的矩阵为Excel文档的过程. 参数: matrix_name (str): 需要被导出成Excel的工作表名 返回: str: 表明成功与否的消息字符串 """ try: # 这里省略具体实现细节... return f"{matrix_name} 已经成功导出了" except Exception as e: return str(e) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值