内容:

表计算

  • 版本 :2022.1 及更高版本

适用于: Tableau Desktop, Tableau Online, Tableau Public, Tableau Server

本文介绍表计算的基础知识以及如何在 Tableau 中创建表计算。

什么是表计算?

若要观看有关 Tableau 中的表计算的 4 分钟介绍视频,请单击此视频链接。



有关相关资源和视频,请参见 Tableau 计算简介(链接在新窗口中打开)。使用 tableau.com(链接在新窗口中打开) 帐户登录。


表计算是应用于可视化项中的值的转换。表计算是特殊类型的计算字段,它用于在 Tableau 中计算本地数据。它们根据当前可视化项中的内容进行计算,并且不考虑从可视化项中筛选出来的任何度量或维度。

您可以将表计算用于各种用途,包括:

  • 将值转换为排名

  • 转换值以显示汇总

  • 转换值以显示总额百分比

对于任何 Tableau 可视化项,都有一个由视图中的维度确定的虚拟表。此表与数据源中的表不同。具体来说,虚拟表由“详细信息级别”内的维度来决定,这意味着由 Tableau 工作表中任何以下工作区或卡上的维度来决定:

基础知识:寻址和分区

添加表计算时,您必须使用详细级别的所有维度进行分区(划定范围)或寻址(定向)。

用于定义计算分组方式(执行表计算所针对的数据范围)的维度称为分区字段。系统在每个分区内单独执行表计算。

执行表计算所针对的其余维度称为寻址字段,可确定计算方向。

分区字段会将视图拆分成多个子视图(或子表),然后将表计算应用于每个此类分区内的标记。计算移动的方向(例如,在计算汇总或计算值之间的差值过程中)由寻址字段来决定。因此,在从上到下对“表计算”对话框的“特定维度”部分中的字段进行排序时,您将通过分区中的各个标记指定计算的移动方向。

当您使用“计算依据”选项添加表计算时,Tableau 会根据您的选择自动将某些维度确定为寻址维度,将其他维度确定为分区维度。但是,在使用特定维度时,则由您来决定哪些维度用于寻址,哪些维度用于分区。

表(横穿)

横穿表的长度进行运算,并在每个分区后重新开始。

例如,在下表中,计算将横穿列“(YEAR(Order Date))”针对每一行“(MONTH(Order Date))”进行运算。

表(向下)

沿表的长度向下运算,并在每个分区后重新开始。

例如,在下表中,计算将沿行“(MONTH(Order Date))”针对每一列“(YEAR(Order Date))”向下进行运算。

表(横穿,然后向下)

先横穿表的长度进行运算,然后沿表的长度向下运算。

例如,在下表中,计算将横穿列“(YEAR(Order Date))”,沿行“(MONTH(Order Date))”向下运算,然后再次横穿列针对整个表进行运算。

表(向下,然后横穿)

先沿表的长度向下运算,然后横穿表的长度进行运算。

例如,在下表中,计算将沿行“(MONTH(Order Date))”向下运算,横穿列“(YEAR(Order Date))”,然后再次沿行向下运算。

区(向下)

沿整个区向下运算。

例如,在下表中,计算将沿行“(MONTH(Order Date))”针对单个区向下运算。

区(横穿,然后向下)

先横穿整个区进行运算,然后沿区向下运算。

例如,在下表中,计算将横穿列“(YEAR(Order Date))”针对区的长度进行运算,沿行“(MONTH(Order Date))”向下运算,然后再次横穿列针对整个区的长度进行运算。

区(向下,然后横穿)

先沿整个区向下运算,然后横穿区进行运算。

例如,在下表中,计算沿行“(MONTH(Order Date))”针对区的长度向下运算,横穿列“(YEAR(Order Date))”,然后再次沿区的长度向下运算。

单元格

在单一单元格内运算。

特定维度

仅在您指定的维度内运算。

例如,在以下维度可视化项中,“Month of Order Date”(订单日期月份)和“Quarter of Order Date”(订单日期季度)为寻址字段(因为它们已选定),而“Year of Order Date”(订单日期年份)为分区字段(因为该字段未选定)。因此计算将跨一年内的所有季度转换每个月的差异。对于每一年,计算会重新开始。

请注意,如果选择了所有维度,则整个表都在范围中。

所在级别

只有当您在“表计算”对话框中选择“特定维度”时,并且在紧接着“计算依据”选项下面的字段中选择多个维度时,即仅当将多个维度定义为寻址字段时,“所在级别”选项才可用。

使用“计算依据”定义表计算时,此选项不可用,因为这些值按位置建立分区。但是对于“特定维度”,因为可视结构和表计算不一定匹配,所以可以使用“所在级别”选项微调您的计算。

使用此设置根据特定维度在视图中设置断点(也就是计算重启点)。这与仅使用该维度进行分区有何不同?事实上,这是分区,但它是按照位置而不是按照值进行的分区,这是使用“计算依据”选项定义分区的方式。

上面示例中的“所在级别”下拉列表中的可用选项包括:

最深指定应该按最精细级别执行计算。这是默认选项。
订单日期季度指定应该按季度级别执行计算。
订单日期月份

指定应该按月份级别执行计算。

创建表计算

若要了解如何创建表计算,请按照下面示例中的步骤进行操作。若要了解如何创建快速表计算,请参见快速表计算

步骤 1:生成可视化项

  1. 打开 Tableau 并连接到“Sample - Superstore”已保存数据源。

  2. 导航到新工作表。

  3. 从“数据”窗格中的“维度”下,将“Order Date”(订单日期)拖到“行”功能区。

    维度将更新为“YEAR(Order Date)”。

  4. 在“行”功能区上,右键单击“YEAR(Order Date)”,并选择“季度”

  5. 在“行”功能区上,单击“QUARTER(Order Date)”上的 + 图标。

    “MONTH(Order Date)”将添加到功能区。

  6. 从“数据”窗格中的“维度”下,将“Order Date”(订单日期)拖到“列”功能区。

    维度将再次更新为“YEAR(Order Date)”。

  7. 从“数据”窗格中的“度量”下,将“Sales”(销售额)拖到“标记”卡上的“文本”

    可视化项将更新为如下所示:

步骤 2:添加表计算

  1. 在“标记”卡上,右键单击“SUM(Sales)”,并选择“添加表计算”

  2. 在打开的“表计算”对话框中,执行以下操作:

    • 对于“计算类型”:选择“差异”

      有关可在 Tableau 中使用的表计算类型以及如何配置表计算的详细信息,请参见表计算类型

    • 对于“计算依据”,选择“表(横穿)”

      有关这些选项的详细信息,请参见基础知识:寻址和分区部分。

      请注意,在您选择计算的运算方式时,可视化项将更新,并显示可视指示符来为您提供指导。

    • 完成后,单击“表计算”对话框右上角中的 X 退出该对话框。

      计算将应用于可视化项中的值。

检查您的工作!

编辑表计算

编辑表计算:

  1. 右键单击视图中应用了表计算的度量,并选择“编辑表计算”

  2. 在出现的“表计算”对话框中进行更改。

  3. 完成后,单击“表计算”对话框右上角中的 X 退出该对话框。

移除表计算

移除表计算:

  • 右键单击视图中应用了表计算的度量,并选择“清除表计算”

    表计算将被从度量中移除,并且可视化项将更新为包含原始值。