自定义地图
默认情况下,Metabase 使用 OpenStreetMaps 进行地图可视化,但也有一些自定义选项。
地图设置
查找地图设置
- 在屏幕右上角,点击 齿轮 图标 > 管理设置 > 设置。
- 从左侧导航栏中选择
地图
。
地图瓦片服务器
默认情况下,Metabase 使用 OpenStreetMaps 瓦片服务器来显示图钉和网格地图。如果您的组织在地图可视化中需要不同的外观或细节级别,您可以通过在页面第一个字段中添加地图瓦片服务器路径来更改地图瓦片服务器。
路径必须是起始为 http://
或 https://
的 URL,或者是 JVM 类路径中本地文件的相对路径。
目前,Metabase 每个实例仅使用一个瓦片服务器。您无法为不同的地图指定不同的瓦片。
自定义区域地图
Metabase 内置了两种区域地图:包含国家的世界地图和包含州的美国地图。
如果您需要其他区域的地图(例如欧盟国家或纽约市社区),您可以指定一个包含区域信息的 GeoJSON 文件。您通常可以通过在线搜索“[您的区域] + geojson”来找到 GeoJSON 地图,例如“NYC neighborhoods GeoJSON”。许多社区成员和政府组织已经为常见区域开发了地图文件。您还可以使用 MapShaper 或 GeoJSON.io 等工具创建自己的 GeoJSON。
您的 GeoJSON 文件应满足以下条件:
- 大小小于 5 MB。
- 包含定义区域的多边形特征(而不仅仅是点或坐标)
- 使用地理坐标(纬度和经度)来定义区域多边形。Metabase 不支持投影坐标,因此您需要将投影坐标转换为地理坐标。
- 可通过公共 URL 访问。目前,您无法将 GeoJSON 文件上传到 Metabase。
添加自定义地图
- 前往 管理设置 > 地图 > 自定义地图。
- 点击添加地图。
- 输入地图名称。
- 提供 GeoJSON 文件的 URL。
- 指定用作区域标识符和区域名称的 JSON 属性。
- 地图名称将显示在自定义区域地图的区域选择器中
- 区域标识符是一个 GeoJSON 字段,用于标识您的区域。此字段中的值应与数据中引用区域的方式匹配。该字段无需与显示名称匹配。
- 区域显示名称是一个 GeoJSON 字段,用于指定区域名称在地图上的显示方式。此字段可以与区域标识符不同。
要在 Metabase 启动时预加载一个或多个区域地图,您可以使用环境变量 MB_CUSTOM_GEOJSON
或配置文件选项 custom-geojson
。
要禁用自定义地图的创建,请使用 MB_CUSTOM_GEOJSON_ENABLED
或配置文件选项 custom-geojson-enabled
。
阅读其他 Metabase 版本的文档。