---
schema_version: "1"
id: 6692b144d3fa094bf28e7c2ce9da22c300ab13562b31b156f586c8d9b76980ee
title: 空间参数和运算符
collection: tableau
version: current
locale: zh-cn
portal_url: https://docs.salesforce.com/tableau/current/zh-cn/pro/desktop/spatial_parameters.md
canonical_url: https://help.tableau.com/current/pro/desktop/zh-cn/spatial_parameters.htm
source_site: help.tableau.com
content_type: documentation
content_hash: 3c474153a93a9457e6fdc39c017a6b8220c93f6acfb8ef033f1457e572bc1c5b
description: Create spatial parameters and use spatial operators in calculations.
---
[跳转到主要内容](#main-content)

# 空间参数和运算符

## 空间参数

您可以创建一个空间参数，用于空间数据计算。您可以从数据源加载空间参数，也可以使用已知文本 (WKT) 在 Tableau 中创建空间参数。空间参数可以是点、多边形、多重多边形、线或这些类型的同质集合。像使用 Tableau 中的其他参数（例如参数控件、参数动作和动态值）一样使用空间参数。

从 Tableau 25.2 开始，您可以使用动态地图视口参数将空间数据值参数设置为作为地图视口的矩形。此功能使您能够创建更具交互性和响应性更强的地图可视化项。若要了解详细信息，请参见[地图视口参数](https://help.tableau.com/current/pro/desktop/zh-cn/Map_Viewport_Parameters.htm)。

**注意：**空间参数只能使用来自空间数据的字段（例如纬度和经度坐标）创建。它们不能用文本字符串字段来创建。例如，国家/地区字段是一个应用了地理角色的文本字符串，但它仍然是一个文本字符串。

### 创建空间参数

若要通过“数据”窗格创建参数，请执行以下操作：

1. 单击右上角中的下拉箭头，并选择“创建参数”。
    
    或者，您可以右键-单击某个字段并选择“创建参数”。  
      
    ![用于创建参数的对话框。](/tableau/current/zh-cn/pro/desktop/zh-cn/Img/parameter_create.png)
2. 在“创建参数”对话框中，为空间参数命名：
3. 打开“数据类型”下拉菜单，并选择“空间”。  
      
    ![对话框中的数据类型下拉菜单，用于创建突出显示“空间”类型的参数。](/tableau/current/zh-cn/pro/desktop/zh-cn/Img/spatialtype_parameter.png)
4. 在“允许的值”下，选择“全部”或“列表”。  
    选择“列表”以使用 WKT 或从字段填充值。对于“列表”域参数，我们建议在命名参数时使用别名。例如，不要将空间参数命名为 POINT(-73.9856 40.7484079)，而应将其命名为“帝国大厦”。别名的使用仅适用于“列表”域参数。
5. 打开“从中添加值”旁边的下拉菜单并选择一个字段。您也可以直接在网格中输入 WKT 值。
6. 选择“确定”。

空间参数显示在“数据”窗格底部的“参数”部分下。

### 可视化您的空间参数

若要可视化空间参数，请在计算中使用参数。

1. 选择“分析”\>“创建计算字段”。
2. 在打开的计算编辑器中，为计算字段命名。
3. 在计算编辑器中，将参数拖放到公式中。
4. 选择“确定”。

“数据”窗格中将添加新的计算字段。数据类型图标前面有一个 =，表示它是一个计算字段。您现在可以通过将参数拖放到地图层或双击该胶囊来将其可视化。

您可以使用参数控件、参数动作或动态参数来更改参数值。

### 在可视化项中显示空间参数控件

参数控件是用于修改参数的值的工作表卡。它们与筛选器卡相似，因为它们都包含修改视图的控件。

若要显示空间参数控件，请在“数据”窗格中右键单击（在 Mac 上按住 Control 单击）参数并选择“显示参数”。  
  
![“显示参数”选项突出显示的参数上下文菜单。](/tableau/current/zh-cn/pro/desktop/zh-cn/Img/parameter_save.png)  

可以通过多种不同的方式使用空间参数控件。作为输入控件，您可以输入 WKT 来设置参数值，也可以输入参数的别名。您还可以使用列表或下拉控件来查看空间参数。

若要了解有关参数以及如何使用它们的详细信息，请参见[创建参数](https://help.tableau.com/current/pro/desktop/zh-cn/parameters_create.htm)。

## 空间运算符

从 Tableau 版本 24.3 开始，您可以在计算中使用空间运算符。

若要详细了解计算字段以及如何使用它们，请参见[在 Tableau 中创建简单的计算字段](https://help.tableau.com/current/pro/desktop/zh-cn/calculations_calculatedfields_formulas.htm)。

### 使用空间运算符创建计算字段

1. 在 Tableau 内的工作表中，选择“分析”\>“创建计算字段”。
2. 在打开的计算编辑器中，为计算字段命名。
3. 在计算编辑器中，在公式中使用空间运算符。
    
    例如：UNION(\[Geometry\])
4. 选择“确定”。

新的计算字段将添加到“数据”窗格，并在数据类型图标前面带有 ![等号和地球图标表示空间计算字段。](/tableau/current/zh-cn/pro/desktop/zh-cn/Img/spatialcalculatedfieldlogo_28x15.png) 图标，表示它是一个与空间运算符一起使用的计算字段。

### Tableau 中的可用空间运算符

#### DIFFERENCE

<table class="TableStyle-Basic-Border" style="width: 100%;mc-table-style: url('Resources/TableStyles/Basic-Border-Light.css');" cellspacing="0"><colgroup><col style="width: 20%;" class="TableStyle-Basic-Border-Column-Column1"><col class="TableStyle-Basic-Border-Column-Column1"></colgroup><tbody><tr class="TableStyle-Basic-Border-Body-Body1"><td class="TableStyle-Basic-Border-BodyE-Column1-Body1">运算符</td><td class="TableStyle-Basic-Border-BodyD-Column1-Body1"><code>DIFFERENCE</code></td></tr><tr class="TableStyle-Basic-Border-Body-Body1"><td class="TableStyle-Basic-Border-BodyE-Column1-Body1">定义</td><td class="TableStyle-Basic-Border-BodyD-Column1-Body1">当第二个参数中的所有区域都是从第一个参数中重叠的区域划分出来时，计算剩余区域的部分。丢弃第二个参数中不重叠的区域。</td></tr><tr class="TableStyle-Basic-Border-Body-Body1"><td class="TableStyle-Basic-Border-BodyB-Column1-Body1">示例</td><td class="TableStyle-Basic-Border-BodyA-Column1-Body1"><p><img src="https://help.tableau.com/current/pro/desktop/zh-cn/Img/spatialoperator_difference.png" alt="维恩图仅填充左侧而未填充中间，旁边是两个地理区域，仅显示两者之间的差异。"></p></td></tr></tbody></table>

#### INTERSECTION

<table class="TableStyle-Basic-Border" style="width: 100%;mc-table-style: url('Resources/TableStyles/Basic-Border-Light.css');" cellspacing="0"><colgroup><col style="width: 20%;" class="TableStyle-Basic-Border-Column-Column1"><col class="TableStyle-Basic-Border-Column-Column1"></colgroup><tbody><tr class="TableStyle-Basic-Border-Body-Body1"><td class="TableStyle-Basic-Border-BodyE-Column1-Body1">运算符</td><td class="TableStyle-Basic-Border-BodyD-Column1-Body1"><code>INTERSECTION</code></td></tr><tr class="TableStyle-Basic-Border-Body-Body1"><td class="TableStyle-Basic-Border-BodyE-Column1-Body1">定义</td><td class="TableStyle-Basic-Border-BodyD-Column1-Body1">计算并返回第二个参数中与第一个参数中区域重叠的区域部分。</td></tr><tr class="TableStyle-Basic-Border-Body-Body1"><td class="TableStyle-Basic-Border-BodyB-Column1-Body1">示例</td><td class="TableStyle-Basic-Border-BodyA-Column1-Body1"><p><img src="https://help.tableau.com/current/pro/desktop/zh-cn/Img/spatialoperator_intersection.png" alt=""></p></td></tr></tbody></table>

#### SYMDIFFERENCE

<table class="TableStyle-Basic-Border" style="width: 100%;mc-table-style: url('Resources/TableStyles/Basic-Border-Light.css');" cellspacing="0"><colgroup><col style="width: 20%;" class="TableStyle-Basic-Border-Column-Column1"><col class="TableStyle-Basic-Border-Column-Column1"></colgroup><tbody><tr class="TableStyle-Basic-Border-Body-Body1"><td class="TableStyle-Basic-Border-BodyE-Column1-Body1">运算符</td><td class="TableStyle-Basic-Border-BodyD-Column1-Body1"><code>SYMDIFFERENCE</code></td></tr><tr class="TableStyle-Basic-Border-Body-Body1"><td class="TableStyle-Basic-Border-BodyE-Column1-Body1">定义</td><td class="TableStyle-Basic-Border-BodyD-Column1-Body1">计算第二个参数中与第一个参数中的区域重叠的任何部分，并从两者中丢弃。返回两个参数中区域的剩余部分。</td></tr><tr class="TableStyle-Basic-Border-Body-Body1"><td class="TableStyle-Basic-Border-BodyB-Column1-Body1">示例</td><td class="TableStyle-Basic-Border-BodyA-Column1-Body1"><p><img src="https://help.tableau.com/current/pro/desktop/zh-cn/Img/spatialoperator_symdifference.png" alt="丢弃中间部分的维恩图，旁边是丢弃重叠区域的两组空间数据地图。"></p></td></tr></tbody></table>

#### UNION

<table class="TableStyle-Basic-Border" style="width: 100%;mc-table-style: url('Resources/TableStyles/Basic-Border-Light.css');" cellspacing="0"><colgroup><col style="width: 20%;" class="TableStyle-Basic-Border-Column-Column1"><col class="TableStyle-Basic-Border-Column-Column1"></colgroup><tbody><tr class="TableStyle-Basic-Border-Body-Body1"><td class="TableStyle-Basic-Border-BodyE-Column1-Body1">运算符</td><td class="TableStyle-Basic-Border-BodyD-Column1-Body1"><code>UNION</code></td></tr><tr class="TableStyle-Basic-Border-Body-Body1"><td class="TableStyle-Basic-Border-BodyE-Column1-Body1">定义</td><td class="TableStyle-Basic-Border-BodyD-Column1-Body1"><p><strong>一元并集（一个参数） </strong></p><p>语法：<code>Union (Spatial)</code></p><ul><li><p>点和线串：返回原始输入。</p></li><li><p>多边形：计算空间并集，将多边形中的所有不同多边形分解为更大的多边形，无论它们在哪里重叠。返回一个多重多边形（有时仅包含一个多边形）。</p></li></ul><p><strong>二元并集（两个参数） </strong></p><p>语法：<code>Union (Spatial, Spatial)
</code></p><ul><li><p>点和线串：合并两个参数中每种类型的所有元素。</p></li><li><p>多边形：执行空间并集，将两个参数中的所有多边形分解为更大的多边形，无论它们在哪里重叠。返回一个多重多边形（有时仅包含一个多边形）。</p></li></ul></td></tr><tr class="TableStyle-Basic-Border-Body-Body1"><td class="TableStyle-Basic-Border-BodyB-Column1-Body1">示例</td><td class="TableStyle-Basic-Border-BodyA-Column1-Body1"><p><img src="https://help.tableau.com/current/pro/desktop/zh-cn/Img/spatialoperator_union.png" alt="这是华盛顿州的地图，其中在计算字段中使用 union 空间运算符后，所有城市均由其自己的多边形表示，并显示在华盛顿州的轮廓旁边。"></p></td></tr></tbody></table>