如何按团队规模筛选Top3和Bottom3项目并在Cluster Map中展示?
Power BI 按Team Scale展示Top3/Bottom3项目Cluster Map实现步骤
一、创建核心度量值(标记符合条件的项目)
在Power BI中新建度量值,命名为Is Top3 or Bottom3,输入以下DAX代码:
Is Top3 or Bottom3 = VAR CurrentTeam = SELECTEDVALUE('Table'[Team Scale]) VAR CurrentScore = SELECTEDVALUE('Table'[Total Score]) VAR TeamScores = CALCULATETABLE(VALUES('Table'[Total Score]), 'Table'[Team Scale] = CurrentTeam) VAR RankAsc = RANKX(TeamScores, CurrentScore, , ASC, Dense) VAR RankDesc = RANKX(TeamScores, CurrentScore, , DESC, Dense) RETURN IF(RankAsc <=3 || RankDesc <=3, 1, 0)
这个度量值会判断当前项目是否属于对应Team Scale下的Top3(分数最高的3个)或Bottom3(分数最低的3个),符合条件返回1,否则返回0。
二、配置Cluster Map可视化
- 在可视化面板中选择「Cluster Map」,将字段拖入对应区域:
- 把
Project拖到「详细信息」 - 把
Total Score拖到「颜色」或「大小」(用来区分分数高低) - 把
Team Scale拖到「图例」(用来区分不同团队规模)
- 把
- 添加筛选器:在「筛选器」面板中选择
Is Top3 or Bottom3,设置筛选条件为「等于1」,这样只会展示符合Top3/Bottom3条件的项目。
三、按Team Scale拆分展示
- 方式1:切片器切换:添加「Team Scale」切片器,选择单个Team Scale时,Cluster Map会自动展示该团队下的Top3/Bottom3项目。
- 方式2:多页面展示:为每个Team Scale(1-4)单独创建页面,在每个页面的筛选器中固定
Team Scale为对应数值,同时保留Is Top3 or Bottom3的筛选条件。
示例表格结构
如果需要测试,可以用以下模拟数据:
| Team Scale | Project | Total Score |
|---|---|---|
| 1 | 项目A | 85 |
| 1 | 项目B | 92 |
| 1 | 项目C | 78 |
| 1 | 项目D | 65 |
| 1 | 项目E | 95 |
| 2 | 项目F | 88 |
| 2 | 项目G | 72 |
| 2 | 项目H | 90 |
| 2 | 项目I | 60 |
| 2 | 项目J | 82 |
内容的提问来源于stack exchange,提问作者meow
相关产品推荐
相关产品推荐

