Tableau 地图入门指南

本教程将引导您完成在 Tableau 中创建地图时可能执行的一些常见任务。

您将学习如何连接并联接地理数据;在 Tableau 中设置该数据的格式;创建位置分层结构;构建和呈现基本地图视图;以及在路线上应用关键地图特征。

如果您不熟悉 Tableau 中的地图构建功能,从此处开始学习非常适合。

步骤 1:连接到地理数据

地理数据有许多形状和格式。打开 Tableau Desktop 时,开始页面将在左侧“连接”窗格中显示可用的连接器。您将通过这些连接器来连接到数据。

可通过连接到空间文件来处理地理数据,或者可以连接到存储在电子表格、文本文件中或服务器上的位置数据。

空间文件(例如 Shapefile 或 geoJSON 文件)包含实际几何图形(点、线或多边形),而文本文件或电子表格包含经纬度坐标格式的点位置,或者包含在引入 Tableau 时将连接到地理编码(数据引用的存储几何图形)的指定位置。

有关 Tableau 支持的连接的完整列表,请参见 Tableau 网站上的数据连接(链接在新窗口中打开)列表。

对于此教程,您将连接到 Tableau Desktop 附带的一个 Excel 文件。它包含 Tableau 可进行地理编码的位置名称。当您构建地图视图时,位置名称将根据您分配给字段的地理角色引用存储在 Tableau Map Service 中的几何图形。在本教程的后面部分,您将详细了解有关地理角色的信息。

  1. 打开 Tableau Desktop。

  2. 在“连接”窗格中,单击“Excel”

  3. 导航到 Documents > 我的 Tableau 存储库 > Data Sources,然后打开 示例 - 超市.xls 文件。

连接到数据源后,屏幕将如下所示:

此页面名为“数据源”页面,您可在其中准备要在 Tableau 中使用的位置数据。

您可以在“数据源”页面中执行以下一些任务,但不必执行所有这些操作来创建地图视图:

  • 添加其他连接和联接数据
  • 向数据源中添加多个工作表
  • 为字段分配或更改地理角色
  • 更改列的数据类型(例如,从数字更改为字符串)
  • 重命名列
  • 拆分列,例如将完整的地址拆分为表示街道、城市、州/省/市/自治区和邮政编码的多个列

有关“数据源”页面以及可在该页面上执行的一些任务的详细信息,请参见设置数据源(链接在新窗口中打开)部分中的主题。

步骤 2:联接数据

数据通常包含在多个数据源或工作表中。只要这些数据源或工作表有共有的列,您就可以在 Tableau 中联接它们。联接是一种在这些公共字段上合并相关数据的方法。使用联接合并数据后会产生一个通常通过添加数据列横向扩展的表。

对于地理数据(特别是空间数据),通常必须进行联接。例如,您可以将包含美国俄勒冈州各个学区自定义地理位置的 KML 文件与一个 Excel 电子表格联接,该电子表格包含有关这些学区的人口信息。

对于此示例,您将联接 Sample-Superstore 数据源中的两个工作表。

  1. 在“数据源”页面左侧的“工作表”下,双击“Orders”(订单)

  2. 在“工作表”下,双击“People”(人员)

    Tableau 将使用两个电子表格中都有的“Region”(区域)列作为联接字段,在两个电子表格之间创建内联接。现在,有一名分配到数据源中的每个位置以及区域的销售人员。

    若要编辑此联接,请单击联接图标(两个圆圈)。您可以在打开的“联接”对话框中编辑联接。有关在 Tableau 中联接数据的详细信息,请参见联接数据(链接在新窗口中打开)

步骤 3:在 Tableau 中设置地理数据的格式

设置数据源之后,您可能需要准备地理数据以在 Tableau 中使用。创建地图视图时,并非必须要执行所有这些程序,但就准备在 Tableau 中使用的地理数据而言,它却是很重要的信息。

根据想要创建的地图类型,您必须为字段(或列)分配某些数据类型、数据角色和地理角色。

例如,在大多数情况下,您的纬度和经度字段的数据类型应为数字(小数)数据角色应为度量,并且分配有纬度经度地理角色。所有其他地理字段的数据类型应为字符串数据角色应为维度,并且分配有相应的地理角色。

注意:如果连接到空间文件,则会创建一个“几何图形”字段。该字段的数据角色应为度量。

此步骤演示如何设置地理数据的格式以满足此条件。

更改列的数据类型

第一次连接到地理数据时,Tableau 会为所有列分配数据类型。这些数据类型包括数字(小数)、数字(整数)、日期和时间、日期、字符串以及布尔值。有时 Tableau 无法正确设置这些数据类型,您需要对其进行编辑。例如,Tableau 可能会为邮政编码列分配“数字(整数)”数据类型。若要创建地图视图,邮政编码数据的数据类型必须为“字符串”。

更改列的数据类型:

  1. 在“数据源”页面上,单击邮政编码的数据类型图标(地球),并选择 “字符串”

    有关数据类型的详细信息,请参见数据类型(链接在新窗口中打开)

为地理数据分配地理角色

在 Tableau 中,地理角色将字段中的每个值与经度和纬度值关联。为字段分配正确的地理角色后,Tableau 将通过查找已安装地理编码数据库中已经内置的匹配,将纬度和经度值分配给该字段中的每个位置。由此 Tableau 可以知道在地图上的何处绘制您的位置。

为某个字段(例如“州/省/市/自治区”)分配地理角色时,Tableau 将创建一个“纬度(生成)”字段和一个“经度(生成)”字段。

有时会为您的数据自动分配地理角色,本例中便是如此。由于列包括一个地球图标,因此您可以确定您的数据已分配有地理角色。

如果未自动分配地理角色,您可以为字段手动分配一个角色。对于此示例,您无需这样做,但务必要了解如何操作,以便您能够为自己的数据分配地理角色。

分配或编辑地理角色:

  1. 在“数据源”页面上,单击地球图标。

  2. 选择“地理角色”,然后选择最适合于您的数据的角色。

    例如,在本例中,“Country”(国家/地区)列未分配有地理角色,因此将分配“国家/地区”地理角色。

注意:如果在为数据分配地理角色时遇到困难,或者您的数据不是 Tableau 地图服务器中内置的数据,您可以执行一些操作,将这些数据引入 Tableau。请参见分配地理角色(链接在新窗口中打开)

从维度更改为度量

连接到地理数据时,Tableau 还会为所有列分配数据角色。列可以是维度或者度量。大多数情况下,纬度和经度列应为度量。对于特殊情况,例如,假设您想要在地图上绘制数据源中的每个位置,但无法上钻或下钻某个详细级别(例如从城市上钻或下钻到州/省/市/自治区),则列可以是维度。点分布(链接在新窗口中打开)图就是这种情况的一个很好的例子。

其余地理数据应为维度。

对于此示例,您无需更改列的数据角色,但务必要了解如何操作,以便您能够为自己的数据更改数据角色。请在此处随意练习。您可以随时撤消所做的更改。

更改列的数据角色:

  1. 在“数据源”页面上,单击“工作表 1”

    工作区将更新为如下所示:

    这称为工作表,您可以在其中构建地图。屏幕的左侧是“数据”窗格。数据源中的所有列以字段形式列在此窗格中。例如,“Country”(国家/地区)和“State”(州/省/市/自治区)。这些字段包含列中的所有原始数据。请注意,Tableau 已生成纬度和经度字段:“纬度(生成)”和“经度(生成)”这是因为您为数据分配了地理角色。

    数据窗格中的字段分为度量和维度。放在“数据”窗格的“维度”部分中的字段通常为分类数据,例如日期和客户 Id,而放在“数据”窗格的“度量”部分中的字段通常为定量数据,例如销售额和数量。

  2. 在“数据”窗格中的“维度”下,选择一个字段(例如“Row ID”(行 ID)),并将其向下拖到“度量”部分。

    该字段将添加到“度量”部分,并从蓝色变为绿色。您刚刚将维度转换为度量。若要将某个字段从度量转换为维度,请将该字段从“度量”部分向上拖到“维度”部分。

    有关详细信息,请参见维度和度量(蓝色和绿色)(链接在新窗口中打开)

步骤 4:创建地理分层结构

因为您在工作表空间中,所以可以创建地理分层结构。这不是创建地图视图的必需操作,但创建地理分层结构将允许您按指定顺序快速钻取到数据包含的地理详细级别。

创建地理分层结构:

  1. 在“数据”窗格中,右键单击地理字段“Country”(国家/地区),然后选择“分层结构”>“创建分层结构”
  2. 在打开的“创建分层结构”对话框中,为分层结构指定一个名称(例如“地图项目”),然后单击“确定”

    在“维度”部分的底部,将会创建包含“Country”(国家/地区)字段的“地图项目”分层结构。

  3. 在“数据”窗格中,将“State”(州/省/市/自治区)字段拖到该分层结构,并将其放在“Country”(国家/地区)字段下方。

  4. 为“City”(城市)和“Postal Code”(邮政编码)字段重复步骤 3。

    完成后,您的分层结构应为如下顺序:

    • Country(国家/地区)
    • State(州/省/市/自治区)
    • 城市
    • Postal Code(邮政编码)

步骤 5:构建基本地图

因为您已连接并联接数据、设置了数据格式并构建了地理分层结构,所以现在就可以开始构建地图。首先将构建一个基本地图视图。

  1. 在“数据”窗格中,双击“Country”(国家/地区)

    该“Country”(国家/地区)字段将添加到“标记”卡上的“详细信息”,而“纬度(生成)”和“经度(生成)”字段将添加到“列”和“行”功能区。系统会创建一个具有一个数据点的地图视图。由于为“Country”(国家/地区)分配了地理角色,因此 Tableau 将创建地图视图。如果双击任何其他字段(例如某个维度或度量),Tableau 会将该字段添加到“行”或“列”功能区或者“标记”卡,具体情况取决于视图中已有的内容。但是,地理字段始终放在“标记”卡上的“详细信息”中。

    由于此数据源仅包含一个国家/地区(美国),因此该国家/地区就是唯一显示的数据点。您将需要添加更多详细级别才能看到其他数据点。由于已创建了地理分层结构,因此可以轻松完成此操作。

  2. 在“标记”卡上,单击 “Country”(国家/地区)字段上的“+”图标。

    将向“标记”卡上的“详细信息”添加“State”(州/省/市/自治区)字段,并且地图将更新以包括数据源中每个州/省/市/自治区的数据点。

    如果未创建分层结构,则“Country”(国家/地区)字段上的“+”图标将不可用。在这种情况下,若要添加“State”(州/省/市/自治区)作为另一个详细级别,请手动将“State”(州/省/市/自治区)从“数据”窗格拖到“标记”卡上的“详细信息”

恭喜!您现在有了一个可以自定义并在后续步骤中作为基础的基本地图视图。

步骤 6:从点更改为多边形

Tableau 中的默认地图类型通常为点图。但是,为地理数据分配了地理角色后,可以轻松地将这些数据点更改为多边形。

注意:填充地图对于城市或机场不可用。

  1. 在“标记”卡上,单击“标记类型”下拉列表,并选择“填充地图”

    地图将更新为多边形地图。

步骤 7:添加视觉详细信息

您可以将度量和维度添加到“标记”卡,向视图中添加视觉详细信息。在本例中,您将向视图中添加颜色和标签。

添加颜色

  • 从“度量”中,将“Sales”(销售额)拖到“标记”卡上的“颜色”

    每个州/省/市/自治区按销售总额着色。由于销售额是一种度量,因此将使用定量调色板。如果将维度放在“颜色”上,则会使用分类调色板。

添加标签

  1. 从“度量”中,将“Sales”(销售额)拖到“标记”卡上的“标签”

    每个州/省/市/自治区按销售总额进行标记。但是,需要为数字设置一点格式。

  2. 在“数据”窗格中,右键单击“Sales”(销售额),并选择“默认属性”>“数字格式”

  3. 在打开的“默认数字格式”对话框中,选择“数字(自定义)”,然后执行以下操作:

    • 对于“小数位”,输入 0

    • 对于“单位”,选择“千(K)”

    • 单击“确定”

    标签和颜色图例将更新,包含指定的格式。

步骤 8:自定义背景地图

背景地图是标记后面的所有内容(边界、海洋、位置名称等)。您可以自定义此背景地图的样式,以及添加地图层和数据层。除了自定义背景地图外,您也可以连接到自己的 WMS 服务器或 Mapbox 地图。有关详细信息,请参见使用 Web 地图服务 (WMS) 服务器(链接在新窗口中打开)使用 Mapbox 地图(链接在新窗口中打开)

自定义背景地图:

  1. 选择“地图”>“地图层”

    “地图层”窗格显示在工作区的左侧。将在此窗格中进行所有背景地图自定义操作。

  2. 在“地图层”窗格中单击“样式”下拉列表,并选择“正常”

    背景地图更新为如下所示:

  3. 在“地图层”窗格中的“地图层”下,选择“海岸线”,然后清除“国家/地区边界”“国家/地区名称”“州/省/市/自治区边界”“州/省/市/自治区名称”

  4. 在“地图层”窗格的顶部,单击“X”返回到“数据”窗格。

    背景地图现在已简化,可以吸引对您的数据的注意。

步骤 9:创建自定义领地

在构建地图视图时,您可能希望将现有位置分组在一起来创建自己的领地或地区,例如组织的销售领地。

  1. 在“数据”窗格中,右键单击“State”(州/省/市/自治区),并选择“创建”>“组”

  2. 在打开的“创建组”对话框中,选择“California”(加利福尼亚州)、Oregon”(俄勒冈州)”和“Washington”(华盛顿州),然后单击“分组”。您创建的每个组表示一个领地。

    注意:若要选择多项,请在选择州/省/市/自治区时按住 Ctrl(在 Mac 上按住 Command)。

  3. 右键单击刚刚创建的新组,并选择“重命名”

  4. 将组重命名为“西海岸”

  5. 对于下一个领地,选择“Alabama”(阿拉巴马州)“Florida”(佛罗里达)“Georgia”(乔治亚州)“Louisiana”(路易斯安那州)“Mississippi”(密西西比州)“South Carolina”(南卡罗来纳州)“Texas”(德克萨斯州),然后单击“分组”

  6. 将此组重命名为“南部”

  7. 对于第三个领地,选择“Connecticut”(康涅狄格州)“Delaware”(特拉华州)“District of Columbia”(哥伦比亚特区)“Maine”(缅因州)“Maryland”(马里兰州)“Massachusetts”(马萨诸塞州)“New Hampshire”(新罕布什尔州)“New Jersey”(新泽西州)“New York”(纽约)“Pennsylvania”(宾夕法尼亚州)“Rhode Island”(罗德岛州)“Vermont”(佛蒙特州)以及最后的“West Virginia”(西佛吉尼亚州),然后单击“分组”

  8. 将此组重命名为“东海岸”

  9. 选择“包括其他”以将其余各州分组。

  10. “其他”组重命名为“中部”

  11. 单击“确定”

    数据”窗格中其他地图项目的下方将出现一个“State (group)”(州/省/市/自治区(组))字段。

  12. 从“数据”窗格中,将“State (group)”(州/省/市/自治区(组))拖到“标记”卡上的“颜色”

    视图更新为如下所示:

    请注意,每个组有不同的颜色。

  13. 在“标记”卡上单击“颜色”图标,并选择“编辑颜色”

  14. 在出现的“编辑颜色”对话框中,选择“分配调色板”,然后单击“确定”

    标记将更新为新颜色。

  15. 从“度量”中,将“Sales”(销售额)拖到“标记”卡上的“工具提示”

    将鼠标悬停在某个州/省/市/自治区上时,将出现一个工具提示,其中包含该州/省/市/自治区的销售额,以及其他信息。稍后您将学习如何编辑此工具提示。

  16. 在“标记”卡上,单击“Country”(国家/地区)字段上的减号 (-) 图标,从详细级别中移除“State”(州/省/市/自治区)。

    如果未创建分层结构,您可以从视图中拖出“State”(州/省/市/自治区),将其移除。可通过从视图中拖出任何字段来将该字段移除。

    州/省/市/自治区将不再出现在地图上。注意到标签以及工具提示中的销售总额是如何更新的吗?这是因为自定义领地将在组级别计算聚合,而不会为组内的每个位置单独计算。因此,举例来说,您在“西海岸”组中看到的总销售额是加利福尼亚州、俄勒冈州和华盛顿州合并在一起的总销售额。

步骤 10:创建双轴地图

到目前为止,您已创建了两个地图视图:一个显示各州的销售额,一个显示各地区的销售额。可以将这些地图相互叠放吗?可以!在 Tableau 中,您可以创建具有两层标记的地图。这在 Tableau 中称为双轴地图,通常用于将点叠放在多边形上。在本例中,您将叠放两个多边形地图。

创建双轴地图:

  1. 从“数据”窗格中,将“经度(生成)”拖到“列”功能区,并将其放在第一个“经度”字段的右侧。

    视图会使用两个相同的地图进行更新。

    “标记”卡上现在有三个标签:每个地图视图各一个标签,以及同时适用于两种视图的标签(“全部”)。您可以使用这些来控制地图视图的可视详细信息。顶部的“Longitude”(经度)选项卡对应于视图左侧的地图,底部的“Longitude”(经度)选项卡对应于视图右侧的地图。

  2. 在“标记”卡上,选择顶部的“经度(生成)”选项卡。

  3. 从“度量”中,将“Sales”(销售额)拖到顶部的“经度(生成)”标记卡上的“颜色”

    左侧的地图将更新。

  4. 在顶部的“经度(生成)”标记卡上,单击“Country”(国家/地区)字段上的加号图标,以下钻回“State”(州/省/市/自治区)详细级别。

  5. 在“标记”卡上单击“颜色”,然后选择“编辑颜色”

  6. 在打开的“编辑颜色”对话框中,单击“调色板”下拉列表,选择“灰色”,然后单击“确定”

    此时,地图将如下所示:

  7. 在“列”功能区上,右键单击右侧的“经度(生成)”字段,并选择“双轴”

  8. 在“标记”卡上,选择底部的“经度(生成)”选项卡。

  9. 在底部的“经度(生成)”标记卡上,将两个“SUM(Sales)”字段都从视图中拖出,以将其删除。

    各个地图的标签不再重叠。

  10. 在底部的“经度(生成)”标记卡上,单击“颜色”,然后为“不透明度”输入 50%

    如果您希望看到位于底层上的地图,则此步骤很重要。

    地图视图更新为如下所示:

    您现在可以看到每个州/省/市/自治区在各个组中的业绩情况。

  11. 在底部的“(经度(生成)”标记卡上,单击“工具提示”

    一个“编辑工具提示”对话框将打开。

  12. 复制以下文本并将其粘贴到“编辑工具提示”对话框中,然后单击“确定”

    <State (group)> 地区销售总额:<SUM(Sales)>

    工具提示类似于如下:

    恭喜!您已创建了双轴地图!接下来只需完成一步。

    有关双轴地图的详细信息,请参见 Tableau 社区上的双轴地图 - 多种方式(链接在新窗口中打开)

步骤 11:自定义其他人与您的地图交互的方式

既然已创建了地图视图,您就可以自定义用户与地图视图的交互方式。例如,您现在可能希望任何人能够放大或缩小地图,或者进行平移。或者,您可能希望显示地图标度?您可以在“地图选项”对话框中自定义这两个选项以及其他选项。

自定义其他人与您的地图交互的方式:

  1. 选择“地图”>“地图选项”

  2. 在出现的“地图选项”对话框中,执行以下操作:

    • 选择“显示地图标度”

    • 清除“显示地图搜索”

    • 清除“显示视图工具栏”

    标度将显示在地图的右下角,地图左上角的地图搜索图标和工具栏将消失。您仍然能够使用键盘快捷方式进行平移和缩放。有关详细信息,请参见缩放和平移视图,以及选择标记(链接在新窗口中打开)

    大功告成!您的地图视图现在已准备好,可以呈现或与仪表板中的另一个视图合并。有关仪表板的详细信息,请参见创建仪表板(链接在新窗口中打开)

想要检查您的工作?请从 Tableau Public 下载示例工作簿(链接在新窗口中打开)

后续步骤

学习一些地图可视化基础知识。(链接在新窗口中打开)

了解可在 Tableau 中构建的地图类型,以及如何创建它们。(链接在新窗口中打开)

在寻找更高级的内容?查看 Tableau 社区上的地图系列文章(链接在新窗口中打开)

浏览有关地图的其他帮助内容(链接在新窗口中打开)

有具体的疑问或问题?请查看 Tableau 社区上的地图论坛(链接在新窗口中打开),或搜索知识库(链接在新窗口中打开)

感谢您的反馈!您的反馈已成功提交。谢谢!