覆盖主要内容
版本: 下个版本

如果您使用了类似PostGIS这样的空间数据库,那么您可以在地图的地理边界数据接口中将其使用起来。

操作步骤

  1. 登录Uniplore数据大屏系统
  2. 在大屏管理页面,单击您创建的可视化应用项目。
  3. 在画布编辑器页面,单击顶部的组件栏中的地图,展开地图列表。

  1. 单击基础平面地图, 将基础平面地图组件添加到可视化应用上。
  2. 调整地图的尺寸以适应可视化应用,并增加高德地图和区域热力图子组件。单击区域热力层子组件进行配置。
  3. 打开区域热力层子组件的数据面板,展开地理边界geojson数据接口,选择数据库作为数据源。
  4. 在选择已有数据源部分选择已添加的PostGIS数据源,数据源添加方式查看这里
  5. 将查询SQL粘贴到SQL编写区域。下面这个SQL是将数据库中存储的地理信息转换为geojson
SELECT
-- 将数据转换为json
row_to_json(fc) as json
FROM (
SELECT
-- 必填的类型
'FeatureCollection' AS type
-- 将数据转为json
, array_to_json(array_agg(f)) AS features
FROM (
SELECT
-- 必填的类型
'Feature' AS type
-- 将地理信息转换为geojson
, ST_AsGeoJSON(geom)::json as geometry
-- 将一些基本字段转为properties
, (
SELECT
row_to_json(t)
FROM (
SELECT
id,
name
) AS t
) AS properties
FROM "贵阳市"
) AS f
) AS fc
  1. 注意要设置数据处理的方法,由于返回的数据转成了json,所以要转换一下,另外嵌套层级也可能和默认情况不一致。例如:
// JSON.parse用于将字符串转换为json格式
return JSON.parse(data[0].json.value)

可以通过浏览器的控制台(以chrome为例),然后再network下面找到执行sql的请求,可以观察到其返回值,例如: 按照截图中所示,那么数据处理方法应该设置为:

return JSON.parse(data[0].json)

一般来说,如果SQL最外层使用了row_to_json,那么处理方法为第一种,如果是使用array_to_json,则处理方法为第二种。array_to_json

  1. 点击刷新数据按钮,调整地图缩放和重心点,得到下图所示结果: