Tableau 中的上下文筛选器

默认情况下,Tableau 中的上下文筛选器会独立计算。这意味着每个筛选器都会单独访问数据源中的所有记录。如果数据源较小,这可能还可以,但对于大型数据源来说,这是一种糟糕的做法。

Tableau 上下文筛选器示例,我们想分析美国每个城市中排名前 10 的产品。

  • 第一个将找到全球表现最好的产品。
  • 第二个是显示美国境内的城市。

两者都会独立访问数据源;这是重复的工作。在这种情况下,我们可以使用或设置 Tableau 中的上下文筛选器。以上面的例子来说,如果我们把第二个设置为上下文筛选器,第一个将根据第二个来搜索数据。这意味着在美国境内,无需搜索全世界。我将给您举一个例子,以便您理解这个概念。

我们将使用我们在上一篇文章中创建的数据源来演示此上下文筛选器。在开始此示例之前,请参考 筛选器 来理解基本技术。另外,请访问 报表中的数据标签 文章来理解 Tableau 数据源。

在 Tableau 中创建上下文筛选器

我建议您记住这个上下文筛选器报表。它可以帮助您了解数据源中的类别、子类别及其各自销售额列表。在此示例中,我们将向您展示如何创建上下文筛选器。我们的场景是查找“配件和服装”(产品类别)中排名前 10 的产品子类别。

首先,将“产品层次结构”中的“英文产品子类别”从“维度区域”拖放到“行架”,将“销售额”从“度量区域”拖放到“列架”。默认情况下,桌面将生成条形图

在此 Tableau 上下文筛选器演示中,我们将对“英文产品名称”添加条件。首先,请单击“行架”中“产品子类别名称”旁边的向下箭头,这将打开菜单。在这里,您需要选择下面显示的选项。

Context Filters 1

选择此选项后,将打开一个新的筛选器窗口,用于创建上下文表达式。请导航到“前 N”选项卡。从下面的屏幕截图,您可以观察到我们正在选择“按字段”部分。

接下来,我们选择“前 10”记录,“销售额”作为度量,“Sum”作为聚合函数。再次,我建议您参考 前 10 产品 文章来理解相关属性。

Context Filters 2

通过单击“确定”按钮,我们创建了第一个 Tableau 上下文筛选器,以根据销售额的总和查找排名前 10 的子类别。

接下来,我们将添加“产品类别”的条件。为此,请将“产品类别”从“维度区域”拖放到“筛选器架”。

将“产品名称”拖到“架”上后,将打开一个新的配置窗口。为了进行上下文筛选器演示,在“通用”部分,请勾选“配件和服装”。我建议您参考 维度上的筛选器 文章来理解相关属性。

下面的屏幕截图显示了报表中“配件和服装”类别下的七个子类别。这意味着桌面首先应用了第一个类别上下文筛选器并提取了前 10 个子类别。然后,它应用了第二个筛选器并显示了“配件和服装”中的子类别。我们都知道它有三个代表“自行车”类别的记录。

现在,让我们将“英文产品类别”更改为 Tableau 上下文筛选器以包含类别。为此,请转到下面显示的“架”,然后单击类别旁边的向下箭头。它将打开菜单,然后从该菜单中选择“添加到上下文”选项。

Add Member to Context Filters

选择该选项后,“英文产品类别名称”表达式将转换为上下文筛选器。根据执行顺序,上下文筛选器将首先执行,然后是维度,最后是度量

从下面的屏幕截图中,您可以看到它显示了“配件和服装”中的前 10 个子类别。

移除 Tableau 中的上下文筛选器

要移除上下文筛选器,请转到显示的“架”。然后,单击要移除的上下文筛选器旁边的向下箭头。它将打开菜单,然后从该菜单中选择“从上下文移除”选项。

从下图可以看到,它将从报表中移除它们。

Remove Context Filters