Tableau Desktop的日期字段上的级联过滤器

时间:2019-04-26 07:07:47

标签: datetime filter tableau

我正在尝试根据看起来像“ 01.01.2018 02:00:00”的日期字段过滤数据。例如,我应该首先选择一年中的一个月,然后基于此选择,我应选择一个月中的某周(较早选择),然后,我应选择本周中的某天,依此类推,直到每小时精确。在每次选择时,我的堆叠条都应适应选择(日期轴应更精确)并过滤所有其他数据。我知道我们可以扩展日期字段(层次结构),但我希望此过滤器是动态的。任何帮助,将不胜感激。预先感谢!

1 个答案:

答案 0 :(得分:0)

您可以使用由自定义计算创建的一系列过滤器来做到这一点。

首先,请确保您的字段被识别为日期。

Tableau Date Dimension

如果显示为Abc或其他类型,则可以单击类型本身,然后选择日期和时间。

接下来,您将需要进行一系列计算以解析出您的日期部分。您可以使用datename('datepart', dateObject)返回名称(如一月,二月等),或使用datepart('datepart', dateObject)返回数字值(1、2等)。我建议您计算日期名称,以便您可以根据层次结构使用维度和过滤。

datepart可以是许多值,例如年,月,小时,秒等。有关完整列表,请参见Date Functions

在日期中需要所有部分之后,选择所有维度,右键单击它们,然后选择“层次结构>创建层次结构”(也可以单击并拖动维度彼此重叠)。 (通过单击/拖动)将尺寸排序为适当的顺序。

接下来,右键单击层次结构中的每个维度,然后选择Show Filter。这会将其添加到“过滤器”功能区并显示出来。 (提示:Tableau将过滤器添加到顶部,因此从层次结构的底部开始,因此您以后无需再次对其重新排序。)

基于上面创建的维度值层次结构,Tableau默认情况下将使过滤器成为层次结构。

然后,您可以通过将最终格式设置在仪表板上并自定义过滤器的位置/样式来进一步优化最终格式。

最后,如果您的数据集非常大,那么这将不是一种有效的方法,因为Tableau每次单击都需要重新计算所有层次结构筛选器值。我建议您使用较少的过滤器(相对日期或选择),或在此处探索一种指导性的分析方法。