在堆栈条形图上,我想可视化前 6 个月每个类别的平均支出金额。
我的数据是这样构造的:
月 | 类别 | 金额 |
---|---|---|
2024 年 3 月 | 租金 | 520 |
2024 年 3 月 | 食物 | 230 |
2024 年 3 月 | 假期 | 326 |
2024 年 4 月 | 租金 | 520 |
2024 年 4 月 | 食物 | 196 |
.... | ... | ... |
条形图配置如下:
Category Axis = [Month]
Colors = [Category]
我发现了一个表达式,当每个月的每个类别都存在条目时,该表达式可以正常工作:
Value Axis = Avg([Amount]) OVER (LastPeriods(6,[Axis.X]))
问题在于,当某个月缺少某个类别时,例如 4 月份“假期”类别中没有支出,那么 4 月份的“假期”部分就不会显示在条形图上。
我预计它会返回一个结果,因为我正在寻找最近 6 个月的平均值,而前一个月该类别确实有支出,所以该值不能为 0。
我也尝试通过交叉表获取结果,其中:
Horizontal = [Month]
Vertical = [Category]
Cell values = Avg([Amount]) OVER (LastPeriods(6,[Axis.Columns]))
一种解决方法可能是在我的数据集中添加缺少的“月份”-“类别”以及金额 = 0 的组合。 问题是,这会大大增加数据量(我估计增加了 20 倍),而我的完整数据集中已经有大约 100 万个条目,其中有 50 多列
如果没有可视化的条目,就无法为其附加值。您可以通过计算列显示普通表中的值,但可以理解您不想显示整个表。 所以看来您需要改变可视化结果的方式。
我建议使用瀑布图:
这样您至少可以看到一条缺少类别的平线。