Geo地图区域
操作步骤
以中国地图区域为例,说明如何进行地图区域的配置。
信息 |
---|
1、系统内置的中国地图区域数据来源于阿里的公开行政区划范围数据, 此数据来源于 高德开放平台 。 2、Smartbi中不提供“世界”地图区域,需要用户自行下载并添加到产品中,详情请参考 配置世界地图区域 。 |
1. 选择地图区域类型
在系统中,Echarts地图所使用的地图区域位于“Geo地图区域”中。
2. 创建子区域
在Geo地图区域的更多菜单,选择 创建子区域。
配置界面如下:
3. 设置编号
输入编号,此编号为地图区域的编号。如“CHINA”
4. 设置区域名称。
在创建Echarts地图展示数据时,系统提供通过区域标志字段来识别区域的入口。
因此,对于配置的每一个地图区域,都需要设置此地图区域的区域名称,以便能够与数据中的区域标识列关联,并在地图中定位区域。
区域名称设置项的值与上一级地图中此区域的name属性需保持一致。比如“广东省”地图的区域名称,与“中国”地图中广东省这个区域的name属性数据,是相同的。
中国地图有上一级地图“世界”,因此区域名称为“中国”。
5. 设置数据映射名称(可选)
由于每个地图中,各个区域名称的区域名称是固定的,比如广东省的区域名称为“广东省”。但是实际数据可能是“广东”,“guangdong”,甚至是“510000”等。
因此通过设置数据映射名称,可将实际数据与区域名称进行映射。
数据映射名称格式为:
名称1;名称2;名称3
如上,当实际数据中存在“中国”、“china”、“CN”等数据时,可知其对应的是中国地图区域。
6. 设置中心点经度坐标及纬度坐标
在创建Echarts地图展示数据时,可以通过区域标识列来创建散点地图。
而散点地图,顾名思义,是需要通过经纬坐标来确定的。
系统中通过区域标识列中的数据,如“广东省”、“山西省”等数据,在地图区域中查找到对应区域的中心点经度坐标及纬度坐标,并在地图中展示相应的数据点。
因此需要设置每个区域,其自身的中心点经度坐标及中心点纬度坐标。
7. 设置地图定义
地图定义可以直接由json格式的文件得到,也可以直接将json代码粘贴到内容区中。
将地图的json代码复制到以下位置:
8. 保存该地图区域,即可在Echarts图形中创建地图,并使用该区域。
导入、导出配置属性项
用于将选中的地图区域的配置属性项整体导出、导入。
地图区域的配置属性项与导出文件的各列都是对应的,其中地图区域界面上的“文件路径、文件内容、无”分别对应导出文件中的“文件类型”列的值“0,1,2”。
导出文件如下:
南海诸岛
对于系统内置的 中国 地图区域,用户可以根据实际业务情况,选择展示 南海诸岛简图 或 南海诸岛全图。
1.双击系统内置的 中国 地图区域节点,在GeoJson地图的文件路径中点击进行选择。
2.效果图对比
南海诸岛简图 | 南海诸岛全图 |
---|---|
地图构建其他说明
在创建Echarts地图展示报表时,可以支持散点地图、热力地图、染色地图三种类型地图。
A.对于染色地图,可以通过 "区域标识"的方式来实现
1.报表数据如下:
2.在创建地图时,选择“区域标识”方式。
3.报表展示如下:
原理说明
在通过区域标识列数据来匹配地图上的区域时,基本的步骤如下:
(1)首先通过区域标识列这个字段的数据,比如“福建”、“广东”这些数据。在地图区域中找到 数据映射名称包含“福建”、“广东”等的地图区域
(2)找到该地图区域之后,拿到对应的“区域名称”,如“福建”
(3)在中国地图中,找到name为“福建”的区域,并在其上展示数据。
因此,在配置地图区域时,需要设置其区域名称。
并且,如果需要通过“区域标识”的方式实现染色地图,则除了所需的地图区域需要绘制和配置之外,还需要绘制并配置其下级的地图区域。比如想要查看广东省的染色地图,则需要在系统中配置广东省地图、广东省下各市的地图。
B.对于散点地图、热力地图可以通过数据点的经度、纬度坐标轴确定点。如下:
1.报表数据如下:
2.创建地图时,选择通过“坐标”方式
3.展示数据如下:
当然,我们也可以通过“区域标识"的方式来实现
1.报表数据如下:
2.创建地图时,选择通过“数据标识”方式
3.能够正常展示数据
对于通过“区域标识”方式来制作散点地图、热力地图,其中的原理是这样的:
(1)系统通过选择的“区域标识列”中的数据,如“安徽”、“福建”等数据,找到“数据映射名称”包含“安徽”、“福建”等数据的地图区域。
(2)找到地图区域之后,系统会拿到地图区域中的中心点经度坐标和中心点纬度坐标。
(3)通过这些坐标,在地图上进行点的绘制和展现
因此,如果需要通过“区域标识”的方式实现散点地图和热力地图,除了所需地图区域需要配置外,还需要配置下一级地图。比如要展示“广东省”的地图,则需要在系统中配置“广东省”地图区域、以及广东省下各市的地图区域。
锚 | ||||
---|---|---|---|---|
|
仪表盘的GIS地图组件支持多种方式接入GIS服务: 系统提供了TileLayer 以瓦片方式加载访问天地图、百度、高德等常见的在线瓦片地图或者用户自己部署发布的离线瓦片地图,也支持自己部署并发布的WMS、ArcGIS Rest方式的地图服务,以满足不同的使用场景。
GIS地图服务类型
TileLayer 瓦片服务
XYZ数据源是一种基于经纬度划分的Web地图瓦片服务。这是一种广泛使用的地图数据源类型,在许多免费或者商业地图服务上都可以找到。大多数地图服务都可以使用该方式进行配置。其显著特征是使用的URL中含有 {x} 、{y}、 {z}的占位符。在加载底图时,会被底层解析替换为具体的XYZ坐标来加载对应的瓦片。例如:
1、系统内置默认集成天地图
使用天地图时,系统默认基于 wgs84(EPSG:4326) 坐标系渲染数据点的位置。系统内置的天地图默认每天最多只能调用API刷新3百万次(此数据由天地图提供),超过次数后GIS底图将显示不了,需要等到下一天才能重新有次数。且这3百万次是所有环境总共刷新的次数,并不是单个项目单个环境,所以项目上如果想要正式使用GIS地图组件,建议项目自行部署一个GIS地图服务。
代码块 |
---|
http://t{0-7}.tianditu.com/DataServer?T=vec_w&x={x}&y={y}&l={z}&tk=您的密钥&showAnnotation=true |
想要使用其他的天地图提供的服务,也可以将 T=vec_w,替换为 T=img_w(影像底图),T= ter_w(地形晕渲),详细可参考:天地图API 。
其中,系统内置的天地图如果不想显示地图注记,可以将参数中的 showAnnotation=true 改为 showAnnotation=false。另外,官方的示例中提供了一种 wmts 服务的访问 {x}、{y}、{z}的方式,其本质和系统提供的方式一致,最终也是通过{x}、{y}、{z}方式实现的。
2、其他地图示例
(1)百度地图
使用百度地图时,系统默认基于 BD:09 坐标系渲染数据点的位置。针对百度地图,系统还提供了一种深色模式,可以在下面的链接地址的后面加参数 customstyle=pseudodark 实现深色模式。
代码块 |
---|
http://online{0-3}.map.bdimg.com/onlinelabel/?qt=tile&x={x}&y={y}&z={z}&styles=ph&udt=20151021&scaler=1&p=1 |
(2)高德地图
使用高德地图时,系统默认基于 GCJ-02 坐标系渲染数据点的位置。
代码块 |
---|
https://wprd0{1-4}.is.autonavi.com/appmaptile?lang=zh_cn&size=1&style=7&x={x}&y={y}&z={z} |
信息 |
---|
TileLayer 瓦片服务:目前推荐使用地图的投影方式为 其他类型底图默认是基于 EPSG:3857 的地图服务,其它投影方式可能会出现渲染底图错乱,坐标偏移等情况。如需要特殊坐标系,请联系相关支持人员反馈,产品后续会丰富投影方式。4326 坐标系渲染数据点的位置,在展示地图数据时,坐标数据最好和所使用的GIS服务是同一个厂商,避免出现坐标位置不准确的情况,比如底图是使用高德地图,但实际数据是从百度地图上获取的坐标数据,就容易出现数据点坐标位置不准确。 |
WMS 服务
WMS 服务可以通过ArcGIS,GeoServer等发布,不同的服务器搭建有所不同,需要根据实际需求部署发布。
ArcGIS的URL通常格式为:
代码块 |
---|
http://<server>/arcgis/services/folder/service/service type(can be MapServer or ImageServer)/WMSServer? |
GeoServer的通常格式为:
代码块 |
---|
https://<server>/geoserver/<serviceName>/wms |
ArcGIS Rest 服务
使用ArcGIS Rest方式配置主要是通过使用ArcGIS Server 的rest API,需要调用的ArcGIS Server 服务的URL可以通过ArcGIS Server管理员提供或在ArcGIS Server的管理界面中找到。
其通常格式为:
代码块 |
---|
http://<server>/ArcGIS/rest/services/<serviceName>/MapServer |
操作步骤
以瓦片方式加载访问一个深色的在线百度地图为例,演示创建一个新的GIS地图服务过程。
1、在 运维设置>全局资源定义>地图区域 中,对 GIS地图服务 点击 ,选择 新建服务 ,如下图所示:
2、配置内容如下:
- 地图服务类型为 Tilelayer 。
- 输入名称和别名。
- URL地址为 http://online{0-3}.map.bdimg.com/onlinelabel/?qt=tile&x={x}&y={y}&z={z}&styles=ph&udt=20151021&scaler=1&p=1&customstyle=pseudodark 。
- Attribute:填写内容推荐根据实际使用的地图厂商进行填写,这里仅作为演示示例,填写为 百度地图。
- 设为默认:是否将当前GIS地图服务设为系统默认底图,用户设置某个GIS地图服务为默认后,仪表盘中创建GIS地图时,默认使用该GIS地图服务作为底图,若某些看板希望使用其他的底图,可在组件属性中修改,详情可参考:GIS地图。