Tableau - 过去24个月的总计

时间:2016-07-15 11:13:35

标签: tableau

我怎样才能做出这样的事情? 请注意,Month的排序取决于参数(显示日期)。参数(显示日期)显示要显示的最后一个月。

enter image description here

这些行代表以下内容:

enter image description here

这可以用于画面吗?

1 个答案:

答案 0 :(得分:1)

我将假设您的日期字段名为日期,并且您测量的值称为

您只需要两个计算字段:

去年/本年度

IF DATETRUNC('month', [Display Date]) >= DATETRUNC('month', [Date])
AND DATEADD('month', -11, DATETRUNC('month', [Display Date])) <= DATETRUNC('month', [Date])
THEN 'Current Year'
ELSEIF DATEADD('year', -1, DATETRUNC('month', [Display Date])) >= DATETRUNC('month', [Date])
AND DATEADD('month', -23, DATETRUNC('month', [Display Date])) <= DATETRUNC('month', [Date])
THEN 'Last Year'
END

很有可能缩短它,但它完成了工作。 DATETRUNC是为了确保考虑整个月的日期。请注意,如果日期不在当前年份或去年,则此字段将为空。

在列架中折腾月(日期)(确保它是离散的),并在行架子中抛出SUM()。将上一年/当前年度添加到“颜色”功能区以将该行拆分为两行,然后过滤掉上一年/当前年度字段的空值。

此时,除了您的图表从1月(或会计年度的开始)开始之外,一切都应该正常工作。我们需要进行排序。

月份排序字段

(MONTH([Date]) + (11 - MONTH([Display Date]))) % 12

这将为每个日期分配1到12之间的数字,其中12为显示日期的月份,1为显示日期之后的月份。

现在右键单击列架中的MONTH(日期),然后点击排序... 。转到字段,选择月份排序字段,您的月份将进行排序,以便显示日期是轴上的最后一个月。