You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

能否用Power BI内置或自定义树状图呈现层级数值数据结构?

在Power BI中实现层级现金账户树状图的方案

核心结论

完全可以通过内置树状图或自定义图表实现你的需求,但必须先将当前的宽表结构转换为层级化的长表结构——因为Power BI的树状图组件依赖维度层级列,而非分散的多度量值列。

原始数据(整理后)

IDCash_All_AccountsCash_Current_AccountsCash_Saving_AccountsCash_Long_Term_Saving_AccountsCash_Short_Term_Saving_Accounts
110050502525
22005015010050

第一步:转换为层级化长表

当前数据是宽表,每个层级对应单独列,需要转成包含层级路径和对应金额的长表,示例结构如下:

ID一级分类二级分类三级分类金额
1全部现金账户当前账户-50
1全部现金账户储蓄账户长期储蓄账户25
1全部现金账户储蓄账户短期储蓄账户25
2全部现金账户当前账户-50
2全部现金账户储蓄账户长期储蓄账户100
2全部现金账户储蓄账户短期储蓄账户50

Power Query转换步骤

  1. 导入原始数据后,选中ID列,点击转换选项卡 → 逆透视其他列,得到Attribute(原列名)和Value(金额)两列;
  2. 添加自定义列,对Attribute列进行层级映射:
    • Cash_Current_Accounts → 一级分类:"全部现金账户",二级分类:"当前账户",三级分类:"-"
    • Cash_Long_Term_Saving_Accounts → 一级分类:"全部现金账户",二级分类:"储蓄账户",三级分类:"长期储蓄账户"
    • Cash_Short_Term_Saving_Accounts → 一级分类:"全部现金账户",二级分类:"储蓄账户",三级分类:"短期储蓄账户"
  3. 过滤掉Cash_All_Accounts和Cash_Saving_Accounts的行(子项求和已等于父项,避免重复计算);
  4. 重命名列并整理结构,得到上述层级长表。

第二步:用内置树状图实现

  1. 在Power BI报表视图中,添加内置树状图可视化组件;
  2. 将一级分类、二级分类、三级分类依次拖入类别字段框;
  3. 将金额拖入值字段框;
  4. 调整格式:在格式选项卡中设置标签显示(如类别名称+金额)、颜色、边框等,即可得到嵌套层级的树状图——大矩形代表"全部现金账户",内部拆分出"当前账户"和"储蓄账户"的矩形,"储蓄账户"内部再拆分出"长期/短期储蓄账户"的小矩形。

第三步:用自定义图表实现(样式更灵活)

如果内置树状图的样式无法满足需求,可从Power BI Marketplace安装自定义图表,比如Hierarchy Treemap或Advanced Treemap:

  1. 点击可视化面板的获取更多可视化项,搜索并安装目标自定义图表;
  2. 同样将一级分类、二级分类、三级分类拖入层级字段,金额拖入值字段;
  3. 自定义图表支持更多设置:比如展示完整层级路径标签、自定义层级颜色映射、添加交互钻取等,适配更复杂的样式需求。

内容的提问来源于stack exchange,提问作者Grzegorz Szymala

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 21:35:20