Power BI中实现层级/父项分组及非累加总计的技术问询
在Power BI中实现自定义父子层级分组表(非聚合父项值)
1. 整理数据结构
首先需要为原始数据添加父项标识列,明确每个子项对应的父类别。将你提供的示例数据转换为包含父子关系的结构(可在Excel中预处理后导入Power BI,或直接在Power BI的“数据视图”中添加列):
| Animal | Score | ParentAnimal |
|---|---|---|
| Dogs | 55 | |
| Rover | 63 | Dogs |
| Lassie | 56 | Dogs |
| Scoobie | 14 | Dogs |
| Champ | 26 | Dogs |
| Cats | 29 | |
| Mr Bigglesworth | 81 | Cats |
| Top Cat | 96 | Cats |
| Bag Puss | 52 | Cats |
2. 创建自定义层次结构
在Power BI的“模型视图”中,选中Animal列和ParentAnimal列,右键选择**“新建层次结构”**,将ParentAnimal放在上层,Animal放在下层(可根据需求调整层级顺序)。
3. 构建度量值确保父项值独立显示
由于父项的Score不是子项之和,需要创建一个度量值来直接显示每行的原始值,避免Power BI自动聚合:
Score Display = SELECTEDVALUE('AnimalTable'[Score])
注:将AnimalTable替换为你实际使用的表名
4. 创建矩阵可视化(层级表)
- 添加矩阵可视化组件到画布
- 将刚才创建的层次结构拖到“行”区域
- 将
Score Display度量值拖到“值”区域 - 在矩阵的“格式”选项中,开启“行标题”的展开/折叠功能,即可实现类似Excel的层级展开效果
5. 实现父子结构下拉筛选
- 添加切片器可视化组件
- 将创建的层次结构拖到切片器的“字段”区域
- 切片器会自动生成支持展开/折叠的父子筛选菜单,点击父项可展开子项,选择对应项即可完成数据筛选
内容的提问来源于stack exchange,提问作者Oliver Humphreys
相关产品推荐
相关产品推荐

