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

PowerBI实现当年降水量总和与历年平均值对比展示

PowerBI实现当年降水量总和与历史年均对比(带平均线样式)

一、先做两个关键DAX度量值

你之前按月分组没解决问题,核心是得先通过DAX算出两个指标,而非单纯依赖分组:

  1. 当年降水量总和
当年降水量总和 = 
VAR 当前年份 = YEAR(MAX('表'[日期]))
RETURN
CALCULATE(
    SUM('表'[降水量]),
    YEAR('表'[日期]) = 当前年份
)

这个度量值会自动识别当前视图里的年份,算出该年的总降水量。

  1. 此前所有年份的年均降水量
历史年均降水量 = 
VAR 当前年份 = YEAR(MAX('表'[日期]))
VAR 历史年份 = FILTER(ALL('表'[日期]), YEAR('表'[日期]) < 当前年份)
RETURN
IF(
    COUNTROWS(历史年份) > 0,
    AVERAGEX(
        VALUES(YEAR('表'[日期])),
        CALCULATE(SUM('表'[降水量]))
    ),
    BLANK()
)

这里先筛选出所有早于当前年份的日期,再按年份计算每年的总降水量,最后取这些年的平均值——确保是年均总和,而非所有历史单日数据的平均,完全匹配你的需求。

二、设置可视化出平均线样式

不用纠结按月分组,直接用折线图就能搞定:

  • 横轴拖入日期列,点击字段旁的箭头,只保留「年份」层级;如果要按月查看当年数据,就选「年份-月份」层级
  • 纵轴拖入刚才创建的两个度量值:当年降水量总和和历史年均降水量
  • 调整样式:选中历史年均降水量对应的折线,在右侧「格式」面板里把线条改成虚线,再调个显眼的颜色,就能得到你要的平均线效果

如果选「年份-月份」层级,历史年均降水量会自动在每个月份显示相同数值,形成一条水平平均线,对比当年各月的累计降水量(如果要查看当月降水量,把第一个度量值的条件改成YEAR('表'[日期])=当前年份 && MONTH('表'[日期])=MONTH(MAX('表'[日期]))即可)

三、踩坑排查

  • 若历史年均值显示空白:检查数据集里是否有当前年份之前的数据,同时确认日期列是正规的日期类型(别是文本格式)
  • 若数值不符:核对AVERAGEX的逻辑,确保是按年份求和后再取平均,而非直接对所有历史数据取平均

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 13:17:11