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

如何在PowerBI中创建多维度合并的Top 10流程榜单?

在PowerBI中创建多维度合并Top10榜单的实现方法

一、创建各维度排名度量值

先为每个维度生成排名,用DAX编写以下度量值(替换你的表名为实际数据表名称):

  • 成本排名
    成本排名 = RANKX(ALL('你的表名'[process name]), CALCULATE(SUM('你的表名'[cost])),,DESC,Dense)
    
    说明:对所有流程名称按成本求和降序做密集排名,避免排名跳号。
  • Count A排名
    Count A排名 = RANKX(ALL('你的表名'[process name]), CALCULATE(SUM('你的表名'[count A])),,DESC,Dense)
    
  • Count B排名
    Count B排名 = RANKX(ALL('你的表名'[process name]), CALCULATE(SUM('你的表名'[count B])),,DESC,Dense)
    

二、创建合并Top10判断度量值

用这个度量值标记哪些流程至少进入了一个维度的Top10:

是否进入合并Top10 = 
VAR CostTop10 = [成本排名] <= 10
VAR CountATop10 = [Count A排名] <= 10
VAR CountBTop10 = [Count B排名] <= 10
RETURN IF(CostTop10 || CountATop10 || CountBTop10, "是", "否")

三、设置可视化筛选

  1. 选择目标可视化图表(如簇状柱形图、表格),将process name拖到轴/行区域,把cost、count A、count B拖到值区域(设置为求和)。
  2. 在筛选器面板中,添加度量值筛选,选择是否进入合并Top10,筛选条件设为「等于」「是」。

四、可选:保留重复流程的展示方式

如果需要显示同一流程在多个维度Top10中的重复条目,可以创建计算表合并三个维度的Top10数据:

合并Top10表 = 
UNION(
    SELECTCOLUMNS(FILTER(ALL('你的表名'[process name]), [成本排名] <=10), "流程名称", [process name], "维度", "成本Top10", "值", CALCULATE(SUM('你的表名'[cost]))),
    SELECTCOLUMNS(FILTER(ALL('你的表名'[process name]), [Count A排名] <=10), "流程名称", [process name], "维度", "Count A Top10", "值", CALCULATE(SUM('你的表名'[count A]))),
    SELECTCOLUMNS(FILTER(ALL('你的表名'[process name]), [Count B排名] <=10), "流程名称", [process name], "维度", "Count B Top10", "值", CALCULATE(SUM('你的表名'[count B])))
)

基于这个计算表做可视化,就能看到每个流程在对应维度的Top10记录。

注意事项

  • 若数据有行级安全或实时连接,将ALL替换为ALLSELECTED,避免权限冲突。
  • 若维度指标不是求和,可将CALCULATE(SUM(...))替换为对应聚合方式(如MAX)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 17:25:24