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

PowerBI中制作按月聚合日期的Stack column chart问题

堆叠柱状图实现方案(按月聚合统计Yes计数)

1. 先把宽表数据转成标准长格式

如果你的数据是多列对应不同项目的日期和Yes/No状态(比如项目A日期、项目A是否Yes、项目B日期、项目B是否Yes这种结构),首先需要把数据整合成三列:项目类型、日期、是否Yes,方便后续统计。

用Python pandas处理的示例代码

import pandas as pd

# 模拟你的原始宽表数据
raw_df = pd.DataFrame({
    "项目A日期": ["2023-01-05", "2023-01-12", "2023-02-03"],
    "项目A是否Yes": ["Yes", "No", "Yes"],
    "项目B日期": ["2023-01-08", "2023-02-10", "2023-02-15"],
    "项目B是否Yes": ["Yes", "Yes", "No"]
})

# 拆分每个项目的数据并统一列名
df_a = raw_df[["项目A日期", "项目A是否Yes"]].rename(columns={"项目A日期": "日期", "项目A是否Yes": "是否Yes"})
df_a["项目类型"] = "项目A"

df_b = raw_df[["项目B日期", "项目B是否Yes"]].rename(columns={"项目B日期": "日期", "项目B是否Yes": "是否Yes"})
df_b["项目类型"] = "项目B"

# 合并成一张长表,去掉空行
long_df = pd.concat([df_a, df_b]).dropna()

用Excel Power Query处理的步骤

  • 选中数据区域,点击「数据」选项卡的「从表格/区域」进入Power Query编辑器
  • 选中所有项目日期列,点击「转换」选项卡的「逆透视列」→「逆透视其他列」
  • 手动修改列名:把「属性」列拆分为「项目类型」和「字段」(比如用「拆分列」按分隔符拆分,假设列名是「项目A日期」,拆成「项目A」和「日期」)
  • 重新透视,把「字段」列的「日期」和「是否Yes」转成单独列,最终得到项目类型、日期、是否Yes三列
  • 点击「关闭并上载」导出处理后的数据

2. 按月聚合统计Yes的数量

把日期转换成月份维度,再按月份和项目类型分组统计Yes的次数。

Python pandas实现

# 转换日期格式并提取月份(格式为YYYY-MM)
long_df["日期"] = pd.to_datetime(long_df["日期"])
long_df["月份"] = long_df["日期"].dt.to_period("M")

# 筛选Yes记录,按月份和项目类型统计数量
agg_result = long_df[long_df["是否Yes"] == "Yes"].groupby(["月份", "项目类型"]).size().unstack(fill_value=0)

Excel实现

  • 在处理后的长表中添加辅助列,输入公式=TEXT(日期,"YYYY-MM")提取月份
  • 插入数据透视表:行选择「月份」,列选择「项目类型」,值选择「是否Yes」并设置值字段设置为「计数」,同时在值筛选里只保留「Yes」
  • 透视表生成后就是每月各项目的Yes计数

3. 绘制堆叠柱状图

Python matplotlib绘制

import matplotlib.pyplot as plt

# 绘制堆叠柱状图
agg_result.plot(kind="bar", stacked=True, figsize=(10, 6))
plt.title("每月各项目Yes计数堆叠柱状图")
plt.xlabel("月份")
plt.ylabel("Yes计数")
plt.xticks(rotation=45)
plt.legend(title="项目类型")
plt.tight_layout()
plt.show()

Excel绘制

  • 选中透视表的数据区域(包含月份、各项目的Yes计数)
  • 点击「插入」选项卡的「柱状图」→「堆积柱形图」
  • 调整图表标题、坐标轴标签、图例位置等样式即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 00:15:58