董凯辉,王明旭,张 驰,廖宝淦,向 男*
(1. 广东省环境科学研究院,广东 广州 510045)
WebGIS是使用Web技术将空间数据通过网络地图引擎展现的新型GIS技术,其融合了Web技术和GIS技术的优点。依托WebGIS[1]、云计算、数据库等技术,能够建立一个方便、快捷、及时、高效的生态环境地理空间数据管理系统,对生态环境空间数据的进一步数据挖掘与信息提取具有重大的推动作用。
本文在WebGIS 的基础上,基于计算机网络、数据库、地理信息系统等技术,完成了广东省生态环境地理时空云平台的总体设计,充分利用本平台支持数据类型多、数据转换性强、数据尺度广、数据更新维护性高等特点,将空间数据作为载体,非空间数据如文本数据、监测数据等多源数据连接整合,构建了一个集数据管理、空间展现、时空联动等特征于一体的生态环境地理时空云平台,为生态环境空间数据的科学管理、利用与决策提供有力支持。
由于传统C/S (客户端/服务器)体系架构兼容性不强、可扩展性不足、开发成本又高,本系统采用目前国内外主流网络信息系统的B/S(浏览器/服务器)体系架构,分层次设计开发来满足系统对属性数据、空间数据、算法数据的管理及调用等需求[2]。
平台采用主流的SPA(single-pageapplication)前后端分离技术[3],前端基于Vue[4]框架,结合以Mapbox GL[5]为地图绘制引擎。后端采用基于Python 的Flask[6]框架,数据库采用PostgreSQL[7],采用GeoServer 实现空间地理信息的展示和发布,利用GeoServer可以方便的发布地图数据,允许用户对特征数据进行更新、删除、插入操作,支持从PostgreSQL中读取数据并发布矢量切片[8]。
平台架构主要包括用户层、应用层、数据层、基础设施共4个组成部分,平台架构如图1所示。
图1 平台架构图
生态环境地理空间数据主要包括基础空间数据(省界、区县界、水系、地形地貌、交通路网等)、环境空间数据(三线一单、土地利用、生态空间、自然资源等)、非空间数据(环境质量、污染排放、能源利用、社会经济等),按照数据类型可分为空间数据与非空间数据。
根据数据类型,平台数据库设计为一个地理空间数据库,一个基础数据库。地理空间数据库主要负责存储空间数据,基础数据主要负责非空间数据的存储。为确保数据的安全性和网络环境下的数据共享,采用上述的PostgreSQL统一存储管理空间与非空间数据。2 个数据库间互联互通,通过数据库引擎可将空间数据与各类非空间数据进行对接转换处理后传送至应用层调用渲染。
基于PostgreSQL的空间数据源,通过Geoserver发布相关矢量、栅格切片,数据源可以是用户存储的矢量、栅格数据,也可以是用户通过属性字段定义生成的数据。用户可对发布的数据进行更新、删除、插入等操作。
数据库格式设计严格按照《环境信息元数据规范》(HJ720-2017)、《环境信息数据字典规范》(HJ723-2014)、《环境数据库设计与运行管理规范》(HJ/T419-2007)等标准规范执行,结合广东省生态环境数据特点与实际应用情况,对数据库表名、字段名及编码格式进行规范化化、统一化管理,在大气环境数据、水环境数据、土壤环境数据、气象数据、社会经济数据、污染排放数据、环境监测数据、环境规划数据、地理遥感数据等空间与非空间数据的基础上建立成熟、标准、完善的数据目录结构体系,为平台的功能应用提供长期稳定、可持续性维护的数据接口。
生态环境地理空间决策平台主要包含地图操作(地图基本操作、地图图层切换、生态空间数据展示)、空间数据查询(图层要素编辑、图层属性展示、数据查询)、分析功能(叠图分析、空间测量、范围筛选)、数据管理(数据导入、数据更新、数据发布)、用户管理(用户同步、用户授权、统一权限认证)等,如图2所示。
图2 平台功能示意图
业务界面主要围绕水、气、土壤等整个生态环境要素体系开展相应的研判分析管理,实现各要素的精细化决策服务。
根据平台架构设计和功能设计的相关要求,按照“系统化、流程化、自动化”的建设思路,采用基于Python的Flask框架及JavaScript的Vue.js框架的前后端分离相关技术进行平台的设计开发,构建了广东省生态环境地理时空云平台。平台左侧为环境专题要素列表及对应的专题图层列表,右侧为地图显示界面,包含区域筛选、高程调节、空间测量等功能模块。
平台可对在线地图进行实时的“放大、缩小、全图展示”等功能,并可通过点击地图资源切换模块来切换地图底图样式。如使用鼠标滚轮向上滚动可放大地图比例尺,聚焦微尺度环境要素的空间分布特征,向下滚动可缩小地图比例尺,扩大查看范围,与邻近环境要素或整体对比分析;使用右侧上方“全屏”工具,可将地图全屏渲染展现;底图样式包含基础、行政、户外、交通、卫星等多种底图样式,切换窗口叠加的底图样式,可展现空间数据所在区域的行政区划、交通路网、自然地理等特征,方便用户在不同业务场景下进行数据分析及管理研判。
区域选择功能是通过点击地图界面上方的区域选择模块,展开广东省21个地市及相关区县的行政区划级联面板,在点击选定的行政区划后,对相应的生态环境图层进行空间过滤,查询行政区划范围内的空间数据。用户可针对所选行政区域进行环境要素叠图分析,开展生态环境准入研判、环境影响评价、环境风险评估等工作,提高决策的精准性、科学性。
与GIS 软件一样,平台提供地图图层要素的属性查询。用户通过点击图层中的某一要素,会弹出对应的要素信息。前端界面设计回调函数后,点击相应图层要素,通过Ajax 技术发送Http 请求至后端服务器,后端程序执行SQL 调用基础数据库中对应的环境数据返回用户界面渲染展示,如点击国家地表水监测监测断面的点位,可调用其对应的水质监测数据,实时体现监测点位的相关监测实况,可选择不同长度的时间序列生成分析图表、变化曲线以及趋势分析。此外,基于平台多源数据,可随时调阅不同时序的社会经济、能源消耗等数据查看背景情况,挖掘数据潜在的有用信息,发现事件间存在的关联性及发展规律。得益于平台良好的可拓展性,后期平台还可接入相关环境模型(水质变化、大气污染物排放分布、生态系统经济价值核算等),对可能发生的情况进行预测分析,并对潜在发生的不利情况进行预警。
平台提供对要素图层的可见性、颜色及透明度的编辑操作,矢量切片地图在线编辑,根据所选图层的属性,对样式文件中对应的图层属性进行面板化显示,用户触发操作根据所选取的图层动态修改样式文件所在的图层属性,浏览器实时渲染地图实现预览效果。点击平台右侧上方的打印按钮,可实现对编辑地图的导出,导出格式支持png、jpg、tiff等多种图片格式。由于平台采用了B/S 架构体系,用户只需安装对应支持的浏览器就可以进行地图查询、编辑和导出等功能的操作,一定程度上降低了使用难度,提供了更加丰富的显示内容和便捷的信息交互方式。
平台右上方包含空间测量工具,提供对空间数据的线距离、斑块面积的测量统计。由于生态环境空间数据涉及到包括水文参数、气象参数、污染源参数、环境容量等多类型的空间环境数据,并且大多数环境空间信息,包括河流位置、监测点位、污染地区域面积等难以通过人工进行测量,因此结合平台的空间属性查询功能,可对环境要素如污染地块面积、水质分布情况、污染物排放及分布状况等生态环境监测工作提供便利。此外,平台还提供高程调节功能,用户可滑动高程调节滑动条来动态调整地图的高程效果,方便用户结合地形地貌进行辅助分析。
生态环境地理空间数据库的建设是保障广东省生态环境数据利用与可持续发展的重要战略部署。本研究基于WebGIS 技术构建了广东省生态环境地理时空云平台,将数据量大、结构复杂的生态环境地理空间数据精准、有序、分层次存储,为后续数据的管理、查询、调用及分析提供便利。平台主要突出3 个方面的作用:①提供了地理空间数据的三维可视化分析功能,可以直观地查看地理空间数据地空间分布、属性等信息。②叠图分析可判断相应区域是否在图层要素内,对于环境监控预警、综合治理、环评审批等工作具有重要的作用。③平台允许用户对生态环境地理空间数据进行实时更新,有效避免数据滞后性,提升平台使用时效性。