地图
Metabase有三种地图可视化类型
- 图钉地图:使用经纬度坐标在地图上放置单个数据点;
- 网格地图:用于在指定区域内分布大量点。
- 区域地图:用于按区域(如国家或州)划分的数据。Metabase提供两种内置地图,但您可以上传自己的自定义区域。
当您选择地图可视化设置时,只要包含地理数据的列具有正确的元数据,Metabase将根据表格或结果集自动尝试选择最佳地图类型。
图钉地图
图钉地图在地图上显示单个数据点的图钉。它们最适合显示未聚合的地理数据。
图钉地图数据形状
要构建图钉地图,您需要一个返回具有经纬度列结果的查询。Metabase将根据经纬度字段,为表格中的每一行在地图上放置一个图钉。行中的其他数据将显示在工具提示中,并且不会影响图钉的位置或形状。
请注意,工具提示仅在使用绘制框进行筛选充分放大地图时才会显示。
创建图钉地图
创建图钉地图的步骤如下:
- 构建一个包含每个数据点经纬度列的查询(可在查询构建器中或使用SQL);
- 选择可视化,然后选择地图;
-
如果您的查询结果中有列的字段类型在表格元数据中设置为经纬度,Metabase应该会自动构建一个图钉地图。
否则,点击齿轮图标进入可视化设置,选择地图类型:图钉地图,然后选择包含经纬度坐标的列。
图钉地图默认显示2000个图钉
默认情况下,即使查询结果中有更多行,图钉地图也只会显示2000个图钉(这个限制与Metabase中显示未聚合数据的每个图表相同)。您可以使用环境变量MB_UNAGGREGATED_QUERY_ROW_LIMIT
来增加基于未聚合查询的图表上渲染的数据点数量,但请记住,此设置将影响所有图表——而不仅仅是图钉地图——并且可能会显著降低您的Metabase和浏览器速度。
如果您需要显示大量地理数据点,请考虑使用网格地图来显示其分布。
网格地图
网格地图是图钉地图的聚合版本——类似于图钉分布的热力图。网格地图根据经纬度将地图划分为网格,然后根据每个网格单元中包含的数据点数量进行着色。
网格地图数据形状
要创建网格地图,您需要一个按分箱经纬度坐标汇总指标的查询。
如果您正在查询构建器中编写查询,可以在“分组依据”块中选择如何对经纬度进行分箱。如果您正在用SQL编写查询,则需要自行添加分箱逻辑。
创建网格地图
创建网格地图的步骤如下:
- 构建一个按经纬度分箱列汇总的查询(可在查询构建器中或使用SQL);
- 选择可视化,然后选择地图;
-
如果您的查询结果中有列的字段类型在表格元数据中设置为经纬度,Metabase应该会自动构建一个网格地图。
否则,点击齿轮图标进入可视化设置,选择地图类型:网格地图,然后选择包含经纬度坐标的列。
- 如果您的查询包含多个指标,您可以在可视化设置中选择要显示的指标。
区域地图
区域地图显示按区域划分的聚合数据分布,例如按国家划分的用户数量。
Metabase内置了两个区域:带国家的世界地图和带州的美国地图。管理员可以在管理员设置中添加自定义区域。
您可以通过设置环境变量MB_DEFAULT_MAPS_ENABLED
来禁用默认区域。
区域地图数据形状
要构建区域地图,您需要一个至少包含两列的查询(可以是使用查询构建器构建的问题,也可以是原生查询):一列是区域名称,另一列是您要按区域显示的指标。
查询结果中的区域名称必须与区域名称完全匹配(区分大小写):世界地图使用两位国家代码,美国地图使用两位州代码或州名,或自定义区域中使用的区域标识符。
要构建区域地图,您的查询结果中必须包含一个区域名称列,即使您的查询结果也包含经纬度坐标。Metabase无法从经纬度坐标推断区域,并且不会检查数据点的坐标是否与该数据点的区域一致。
创建区域地图
创建区域地图的步骤如下:
- 构建一个按区域名称汇总的查询(可在查询构建器中或使用SQL)。
- 选择可视化,然后选择地图;
- 选择地图类型:区域;
- 选择区域地图:世界地图(内置)、美国(内置),或
- 在区域字段中选择包含区域名称的列
- 如果您的查询包含多个指标,您可以在指标字段中选择要显示的指标。
您可以更改区域地图使用的基本颜色,但目前无法使用自定义颜色渐变(例如,从红色到绿色),也无法更改Metabase对指标进行分箱的方式。
世界地图
要以按国家划分的世界地图形式可视化您的结果,您的结果必须包含一个带有两位ISO国家代码的列,例如“US”或“BR”,例如:
国家代码 | 指标 |
---|---|
US | 36 |
BR | 25 |
IN | 62 |
RO | 78 |
查询结果中的国家代码必须与两位代码完全匹配:如果国家代码是小写或包含额外的空格,Metabase将无法识别它们。
如果您的查询结果中包含语义类型为“国家”的列,Metabase应该会自动构建世界地图。否则,您可以在区域字段可视化设置中选择要用作国家名称的列。
您可以将世界区域地图中的国家列连接到“位置”类型的仪表板过滤器。
美国地图
要从您的数据创建美国地图,您的结果必须包含一个包含州名或两位州代码的列,例如“NM”或“New Mexico”,例如:
州 | 指标 |
---|---|
California | 45 |
New York | 56 |
Texas | 34 |
Illinois | 67 |
如果您的查询结果中有列的语义类型设置为“州”,Metabase应该会自动构建美国地图。否则,您可以在可视化设置中选择要用作州名称的列。
您可以将美国区域地图中的州列连接到“位置”类型的仪表板过滤器。
自定义区域
管理员可以通过在管理员设置中添加自定义GeoJSON地图来添加更多区域,例如巴西各州或纽约市社区。一旦添加了自定义地图,您就可以在地图设置中构建区域地图时选择它们。
您的查询结果必须包含一列,其值与自定义地图设置中的区域标识符属性匹配(而不是区域显示名称)。
如果您想将自定义区域地图中的区域列连接到仪表板过滤器,则需要使用“文本或类别”——而不是“位置”——仪表板过滤器类型。
使用地图
深入分析
- 图钉地图:如果图钉链接到其他表格,或者信息过多无法在工具提示中显示,单击图钉将带您进入详情页面,其中显示字段列表以及连接的表格列表。
- 网格地图:如果点击网格单元格,您将获得进一步放大单元格的选项。
- 世界区域地图和美国州区域地图:如果您的未聚合数据还包含每个数据点的经纬度坐标(除了区域名称),那么您将获得一个选项来放大到特定区域,这将创建该区域内按经纬度分箱的数据点网格地图。这仅适用于内置区域地图,不适用于自定义区域地图。
设为默认视图
在图钉地图和网格地图上,每次刷新页面时,地图都会重置为默认视图。要控制当有人打开地图时显示的内容(例如,围绕特定点居中,具有特定缩放级别),请调整您的地图方向。这将成为地图刷新页面后返回的新默认视图。
绘制框进行筛选
在图钉地图和网格地图上,过滤器框允许您放大或按特定区域筛选数据。
您可以点击绘制框进行筛选并在地图上移动鼠标。要勾勒出地图的一个部分,按住鼠标并在地图上拖动以创建一个透明的蓝色框。勾勒出目标区域后,松开鼠标,您的地图将更新以筛选所选区域中的数据。如果您设置了默认视图,视图将保持静止。如果没有设置默认视图,视图将放大到所选区域。
绘制框将为您的查询添加过滤器。
自定义地图瓦片
管理员可以自定义图钉地图和网格地图使用的背景瓦片,请参阅更改地图瓦片服务器。
目前,Metabase每个实例使用一个瓦片服务器。您不能为不同的地图指定不同的瓦片。
限制
-
目前,您无法在地图上自定义以下可视化设置:
- 图钉地图上图钉的颜色;
- 网格地图上网格的颜色;
- 区域地图的分箱数量或大小。
- 您不能组合不同类型的地图。例如,您不能在区域地图上放置图钉。
- 将自定义区域地图连接到仪表板过滤器时,需要使用类别(而不是位置)仪表板过滤器类型。
- 您无法为不同的地图指定不同的背景瓦片。
何时不应使用地图可视化地理数据
如果地图上区域的相对位置不是您可视化的主要焦点,请考虑改用条形图或行图。例如,按州划分的销售额通常更适合用行图或条形图表示,而不是区域地图。
阅读其他Metabase版本的文档。