Power BI中无关联数据集共用图表X轴的实现方法求助
Power BI 共用连续X轴展示多表数据解决方案
1. 创建独立的Session维度表
用DAX生成从1到两表SessionNumber最大值的连续序列,作为统一的X轴维度:
SessionDim = GENERATESERIES( 1, MAX(MAX(CoreData[SessionNumber]), MAX(ExtendedData[SessionNumber])), 1 )
该表会生成包含所有需要的会议编号的连续值,作为折线图的X轴基础。
2. 建立维度表与事实表的关系
- 在数据模型视图中,将
SessionDim[Value]与CoreData[SessionNumber]建立关系,筛选方向设为Single(维度表→事实表) - 同理,将
SessionDim[Value]与ExtendedData[SessionNumber]建立关系,筛选方向同样设为Single - 保留CoreData、ExtendedData与Staff表的双向关联不变,确保Staff维度的筛选能正常作用于两个事实表
3. 编写适配的度量值
为两个数值列创建度量值,确保在没有对应Session数据时返回0,避免折线图出现断层:
Total Distributions = COALESCE(SUM(CoreData[NumberOfDistributions]), 0)
Total Training Attendees = COALESCE(SUM(ExtendedData[NumberOfTrainingAttendees]), 0)
若需要更精准的筛选控制,也可以用CALCULATE限定Session维度的匹配:
Total Distributions = CALCULATE( SUM(CoreData[NumberOfDistributions]), TREATAS(VALUES(SessionDim[Value]), CoreData[SessionNumber]) )
4. 构建折线图
- 将
SessionDim[Value]拖入折线图的X轴区域 - 将上述两个度量值拖入Y轴区域
此时折线图会自动使用连续的会议编号作为X轴,两个指标分别以折线展示,不会出现排列组合的问题,且缺失数据的Session会显示0值。
内容的提问来源于stack exchange,提问作者Chris
相关产品推荐
相关产品推荐

