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

Power BI中实现矩阵转折线簇状柱形图的DAX度量值求助

解决Power BI折线簇状柱形图中忽略Filter列筛选并计算占比的问题

你的问题核心在于ALLSELECTED(Table[Filter])没有完全移除Filter列的行上下文筛选——当Filter列作为可视化的图例/轴时,每个数据点本身就带有Filter的行上下文,ALLSELECTED只能移除外部筛选器(比如切片器),没法消除这个行上下文的影响。咱们换用ALLEXCEPT来精准控制要保留的筛选上下文,就能实现你要的效果。

步骤1:创建每个TimesReshopped分组的总唯一车辆计数

这个度量值会忽略Filter列的所有筛选,只保留TimesReshopped的分组上下文:

TotalCarsPerReshop = 
CALCULATE(
    DISTINCTCOUNT(Table[CarID]),
    ALLEXCEPT(Table, Table[TimesReshopped])
)
  • ALLEXCEPT的作用是:保留第二个参数指定列(这里是TimesReshopped)的所有筛选,移除表中其他所有列的筛选(包括Filter列的行上下文和外部筛选)。这样同一个TimesReshopped分组下,不管Filter列选的是什么,这个度量值都会返回该分组的总唯一CarID数(比如你说的190、182)。

步骤2:创建当前Filter分组的唯一车辆计数

这个是你当前分组的基础计数,用来计算占比:

CurrentCarCount = DISTINCTCOUNT(Table[CarID])

步骤3:计算占比

用当前分组的计数除以对应TimesReshopped分组的总计数,处理除零情况:

ReshopGroupPercentage = 
DIVIDE(
    [CurrentCarCount],
    [TotalCarsPerReshop],
    0 // 当总计数为0时返回0,可根据需求调整
)

验证与使用

把这三个度量值添加到你的折线簇状柱形图中:

  • 用TimesReshopped作为横轴
  • 用Filter作为图例
  • 柱形图显示CurrentCarCount,折线图显示ReshopGroupPercentage(记得把折线图的格式设为百分比)

这样就能实现:同一个TimesReshopped分组下,所有Filter类别对应的总计数都一致,占比则是该Filter类别在当前Reshop分组中的占比。

如果还有其他需要保留的筛选维度(比如日期范围),只需要把对应的列添加到ALLEXCEPT的参数里即可,比如ALLEXCEPT(Table, Table[TimesReshopped], Table[Date])。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.28 10:15:58