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

如何解决Power BI中问卷数据条形图统计Yes结果的显示异常

Power BI问卷数据Yes回答数条形图修复方案

问题描述

我有一张包含两个问题(Q01、Q02)的问卷数据表,每个问题的可选答案仅为"yes"、"no"、"n/a"三类。需要制作条形图展示每个问题的"yes"回答数量,最终图表需包含两个分别标注为"Q01"和"Q02"的柱形,对应统计各列的yes回答数。

尝试用簇状条形图,将Q01、Q02列放到Y轴,给每列添加筛选器仅选择"yes",但同时设置两列后,Power BI显示的两个柱形大小完全一致,实际是取了两列数据的交集结果,无法正确统计各自的yes数量。

示例数据
用DAX生成的示例表代码:

Sample = {(1, "yes", "yes"),(2, "no", "yes"),(3, "no", "yes"),(4, "yes", "no"),(5, "yes", "yes")}

(注:示例中Q01有3个yes,Q02有4个yes)

当前错误结果:两个柱形高度相同,均显示3(即两列同时为yes的行数),未正确统计各自的yes数量。

修复方法

方法一:数据逆透视(推荐方案)

将宽表转换为窄表,让Power BI能正确识别维度与度量,是最规范的处理方式:

  1. 进入数据视图,选中目标问卷数据表
  2. 点击顶部菜单栏的转换数据,进入Power Query编辑器
  3. 选中Q01、Q02列,点击转换选项卡中的逆透视列(若存在ID等无关列,需先选中Q01、Q02再执行逆透视)
  4. 逆透视后会生成两列:属性(对应原列名Q01、Q02)和值(对应原列的回答内容)
  5. 关闭并应用Power Query的更改
  6. 制作条形图:
    • 将属性字段拖到轴(Y轴)区域
    • 创建度量值统计yes数量:
      Yes数量 = CALCULATE(COUNTROWS('Sample'), 'Sample'[值] = "yes")
      
    • 将Yes数量拖到值(X轴)区域
    • 此时图表会正确显示Q01(3个yes)和Q02(4个yes)的柱形

方法二:创建独立度量值(无需修改原表)

如果不想调整原表结构,可为每个问题单独创建度量值:

  1. 在数据视图中,点击建模选项卡的新建度量值
  2. 为Q01创建度量值:
    Q01_Yes数量 = CALCULATE(COUNTROWS('Sample'), 'Sample'[Q01] = "yes")
    
  3. 为Q02创建度量值:
    Q02_Yes数量 = CALCULATE(COUNTROWS('Sample'), 'Sample'[Q02] = "yes")
    
  4. 制作条形图:
    • 将Q01_Yes数量和Q02_Yes数量拖到值区域
    • 图表会自动生成标注为Q01、Q02的柱形,正确展示各自的yes数量

错误原因说明

原方法中给两列同时添加"yes"筛选器,Power BI会默认执行逻辑交集筛选:仅统计同一行中Q01和Q02都为yes的记录(示例中为3行),因此两个柱形大小一致,无法实现各自独立统计的需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 08:35:20