---
schema_version: "1"
id: b39147f3939b5425af978d604545a481cb0d064f13f957d69e42aa5bb99c6d91
title: 创建空间计算和联接
collection: tableau
version: current
locale: zh-cn
portal_url: https://docs.salesforce.com/tableau/current/zh-cn/prep/prep_spatial_calculations_and_joins.md
canonical_url: https://help.tableau.com/current/prep/zh-cn/prep_spatial_calculations_and_joins.htm
source_site: help.tableau.com
content_type: documentation
content_hash: e9c7372c405d05cce942327e20534ebbea8fc2eb0103ab499f1da3c5f7dc5ff0
description: Create spatial calculations and spatial joins in Tableau Prep.
---
[跳转到主要内容](#main-content)

# 创建空间计算和联接

_在 Tableau Prep Builder 版本 2026.1 及更高版本以及 Web 上受支持。_

今天，您可以在 Tableau Prep Builder 中或 Web 上的 Tableau Prep 中连接到空间文件和空间数据源。现在，从版本 2026.1 开始，您还可以使用计算字段的空间函数清理和转换空间数据。您也可以在“联接”步骤中创建空间联接。这使您能够在 Tableau Prep 中执行复杂的空间任务，从而使 Tableau 中的空间数据分析更易于访问和高效。有关可以连接到哪些空间文件格式和数据库的信息，请参见[连接到数据](https://help.tableau.com/current/prep/zh-cn/prep_connect.htm#connect-via-builtin-connectors-for-popular-data-types)中的“连接到空间文件和数据库”。

Tableau Prep 支持许多与 Tableau Desktop 相同的空间计算函数。例如，您可以使用 MAKEPOINT 函数将纬度和经度字段数据转换为文本文件中的 Tableau 点值。使用 VALIDATE 函数确认点、多边形或线字段值的拓扑正确性。您甚至可以要求 Tableau Agent 为您创建这些计算。

在 Tableau 中联接空间数据可能会消耗宝贵的资源并影响整体性能。通过在 Tableau Prep 中执行空间联接，您可以提前加载此过程，并在开始空间分析之前使用干净的空间数据简化可视化项制作。

## 限制

虽然 Tableau Prep 支持许多与 Tableau Desktop 相同的空间特性和函数，但也有一些限制。

- Tableau Agent 可以创建空间计算，但还不能创建空间联接。
- 无法将 .mif 和 .shp 文件上载到 Web 制作。
- Tableau Prep 无法将 Tableau 空间值转换为 WKT（众所周知的文本格式）、GeoJSON 或任何其他空间数据类型格式。
- 此功能不支持高级空间处理，例如从多边形中移除孔或将多边形转换为折线。
- Tableau Prep 中的空间联接仅支持在空间字段类型上进行联接。若要将空间数据与文本文件中的经度和纬度字段等非空间数据联接，请首先使用该数据的空间函数创建一个计算字段。例如，使用 MAKEPOINT 空间函数将纬度和经度字段数据转换为点字段。
- 包含空间数据的流程只能输出到 .hyper 文件或作为已发布数据源。当前不支持其他输出类型。
- 当前不支持空间并集。

## 创建空间计算

您可以使用 Spatial 函数将经度和纬度字段或表示位置的其他字段（如邮政编码或国家/地区名称）转换为空间字段类型。Tableau Prep 支持以下空间函数。有关这些函数和语法的详细信息，请参见 Tableau Desktop 和 Web 制作帮助中的[空间函数](https://help.tableau.com/current/pro/desktop/zh-cn/functions_functions_spatial.htm)。

<table style="width: 100%;" class="table--plain"><colgroup><col><col><col></colgroup><tbody><tr><td><b>函数</b></td><td><b>语法</b></td><td><b>何时使用此函数</b></td></tr><tr><td>AREA</td><td><code>AREA(Spatial Polygon, 'units')</code></td><td><p>计算土地价值</p><p>示例：确定房地产地块的总面积以计算每平方英尺的价格。</p></td></tr><tr><td>BUFFER</td><td><code>BUFFER(Spatial point, distance, 'units')</code></td><td><p>贸易区分析</p><p>示例：在新门店位置周围划定一个 15 公里范围的“服务覆盖区”，以确定哪些顾客居住在可驾车到达的距离内。‌</p></td></tr><tr><td>DIFFERENCE</td><td><code>DIFFERENCE(Spatial, Spatial)</code></td><td><p>排除区域</p><p>示例：选取一个销售区域的多边形，并“剔除”受保护的森林区域或竞争对手的销售范围，以确定实际应税区域。</p></td></tr><tr><td>DISTANCE</td><td><code>DISTANCE(SpatialPoint1, SpatialPoint2, 'units')</code></td><td><p>交付优化</p><p>示例：计算仓库距离发运中心有多远，以标记任何超过“本地”运费的货件。</p></td></tr><tr><td>INTERSECTION</td><td><code>INTERSECTION (spatial, spatial)</code></td><td><p>寻找共享空间</p><p>示例：确定两个不同野生动物栖息地交汇的具体重叠区域，以研究物种间的相互作用。</p></td></tr><tr><td>INTERSECTS</td><td><code>INTERSECTS (geometry1, geometry2)</code></td><td><p>筛选数据</p><p>示例：返回 True 或 False。使用此函数作为筛选器，仅保留位于特定“高增长”学区内的门店位置。</p></td></tr><tr><td>LENGTH</td><td><code>LENGTH (geometry,'units')</code></td><td><p>基础结构规划</p><p>示例：测量光纤电缆线路的总里程，以估算网络扩展的材料成本。</p></td></tr><tr><td>MAKELINE</td><td><code>MAKELINE(SpatialPoint1, SpatialPoint2)</code></td><td><p>物流路线</p><p>示例：创建始发地机场和目的地之间的缩短距离，以可视化全球航班航线。</p></td></tr><tr><td>MAKEPOINT</td><td><code>MAKEPOINT(latitude, longitude, [SRID])</code></td><td><p>原始数据地理编码</p><p>示例：将包含纬度和经度坐标的电子表格转换为 Tableau 可以映射的实际地理点。</p></td></tr><tr><td>OUTLINE</td><td><code>OUTLINE(spatial polygon)</code></td><td><p>突出显示边界</p><p>示例：提取复杂城市形状的边界，为地图叠加层创建一条清晰的“外围”轮廓线。</p></td></tr><tr><td>SHAPETYPE</td><td><code>SHAPETYPE(geometry)</code></td><td><p>审计数据</p><p>示例：确定空间列是否包含点、线或多边形，以确保在将数据集与其他数据联接之前保持一致。</p></td></tr><tr><td>SYMDIFFERENCE</td><td><code>SYMDIFFERENCE(spatial, spatial)</code></td><td><p>变化检测</p><p>示例：对比 2020 年和 2024 年的洪水区域地图，找出仅在其中一年被淹没、而非两年都被淹没的区域。‌</p></td></tr><tr><td>VALIDATE</td><td><code>VALIDATE(spatial geometry)</code></td><td><p>数据清理</p><p>示例：检查点、线串和多边形（如邮政编码、城市、州/省/市/自治区等）是否有效或损坏。使用此选项可以筛选出可能使流程崩溃的损坏形状。此计算可能需要一段时间来运行。</p></td></tr></tbody></table>

### 为空间数据创建计算字段

1. 连接到包含空间数据的数据源。
2. 在“配置”窗格工具栏中单击“创建计算字段”，或在配置卡或数据网格中单击“更多选项”![由 3 个点表示的“更多选项”菜单。](/tableau/current/zh-cn/prep/zh-cn/Img/prep_moreoptions_icon.png) 菜单，并选择“创建计算字段”\>“自定义计算”。
3. 在计算编辑器中，输入计算的名称，并在“引用”字段下拉菜单中选择“空间”。
    
    ![显示空间计算选项的计算编辑器对话框。](/tableau/current/zh-cn/prep/zh-cn/Img/prep_spatial_calc_editor.png)
4. 选择要计算的空间函数，然后输入表达式。

举例来说，如果您有一个包括纬度和经度值的文件，并且您想要计算门店周边 5 英里范围内的人口数，则可以使用 BUFFER 函数和下面所示的语法创建一个计算字段。

![显示 BUFFER 空间函数和语法示例的 Tableau Prep 计算编辑器。](/tableau/current/zh-cn/prep/zh-cn/Img/prep_spatial_calc_editor_example.png)

## 创建空间联接

就像任何其他联接类型一样，您可以在“联接”步骤中对空间数据执行联接。当数据源包含空间数据，且字段被分配了地理空间数据类型 ![表示地质或地理数据类型的地球图标。](/tableau/current/zh-cn/prep/zh-cn/Img/prep_spatial_geo_data_type_icon.png) 时，现在可以在联接子句中看到用于“相交”的新运算符。对于空间联接，Tableau Prep 支持现有相同的联接功能以及一些附加功能。有关在 Tableau 中联接数据的详细信息，请参见[联接您的数据](https://help.tableau.com/current/prep/zh-cn/prep_combine.htm#join-your-data)。

当 Tableau Prep 识别数据集中的地理空间字段时，默认情况下它会将相交联接类型应用于匹配字段。任何其他地理空间字段匹配项显示在“联接子句建议”部分中，您可以通过单击它们来添加这些匹配项。

对于空间联接，您可以将光标悬停在 Intersects 运算符上以查看有关联接的可视工具提示。通过单击出现在“联接结果汇总”部分中的“在 Tableau Desktop 中预览”按钮，在 Tableau Desktop 中检查结果。

![Tableau Prep 的“联接设置”窗格，显示联接子句和结果、可视工具提示以及“在 Tableau Desktop 中预览”按钮。](/tableau/current/zh-cn/prep/zh-cn/Img/prep_spatial_join_clause.png)

您只能在空间字段类型上进行联接。如果需要将非空间数据与空间数据联接，您可以使用其中一个空间函数为非空间数据（例如经度或纬度字段）创建计算字段，然后创建联接。

支持的空间联接包括：

- 点对点
- 点对线
- 点对多边形
- 线对线
- 线对多边形
- 多边形对多边形

### 我需要哪种联接类型？

您选择的联接类型将取决于可视化项的目标。

- **内部联接**：选择此联接类型以筛选两个数据集，并仅可视化化数据集共有的几何图形。
- **左联接或右联接**：选择此联接类型以筛选一个数据源中的数据，并可视化另一个数据源中的所有几何图形以及它们的共有的点。
- **外部联接**：选择此联接类型以可视化两个数据源中的所有几何图形。

空间联接支持 Tableau Prep 中的所有联接类型。有关联接类型的详细信息，请参见[联接您的数据](https://help.tableau.com/current/prep/zh-cn/prep_combine.htm)。

### 联接空间数据

若要创建空间联接，请执行以下操作：

1. 将至少两个包括空间数据的表添加到“流程”窗格，然后选择并将相关的表拖到其他表上，直至显示“联接”选项。这将在流程中创建一个新的“联接”步骤。
    
    ![Tableau Prep 流程画布，显示拖放以联接数据源的操作。](/tableau/current/zh-cn/prep/zh-cn/Img/prep_spatial_join_drag_drop.png)
2. 在联接步骤的“设置”选项卡中，查看“已应用联接子句”。默认情况下，Tableau Prep 使用 Intersects 运算符创建用于匹配地理空间字段的联接子句。通过单击字段或运算符来编辑联接子句。将光标悬停在 Intersects 运算符上可查看有关联接的可视工具提示。
    
    ![Tableau Prep 的“已应用联接子句”下拉选项，用于编辑联接子句。](/tableau/current/zh-cn/prep/zh-cn/Img/prep_spatial_join_clause_dropdown.png)
3. 在“联接类型”部分，单击维恩图以更改联接类型。
4. 在“联接结果汇总”部分，查看由于联接类型和联接条件的原因而包括和排除的字段数。在“联接子句”窗格中，您可以看到联接子句中每个字段中的值。不符合联接子句条件的值将以红色文本显示。您也可以单击“在 Desktop 中预览”以在 Tableau 中测试结果。
    
    ![Tableau Prep 空间联接汇总结果。](/tableau/current/zh-cn/prep/zh-cn/Img/prep_spatial_summary_join_results.png)
5. 在“联接子句建议”部分，您可以查看任何建议的联接子句匹配项并将其添加到“已应用联接子句”列表中。