WebGIS数据可视化

一、什么是GIS

   GIS,全称geographic information system,地理信息系统,是对空间数据进行相关处理的一门学科,一种技术。

   最常见的WebGIS应用就是互联网地图网站了,如百度地图、高德地图、google地图等等。

 

二、什么是数据可视化

   数据可视化指的是数据用统计图表方式呈现,将不可见的数据现象用简洁明了的统计图表展示出来。

 

   高效成功的数据可视化用准确简单的方式传递最准确的信息,节约人们思考的时间,因为人类右脑记忆图像的速度比左脑记忆抽象的文字快100万倍,所以数据可视化对人们拿到数据做出决策起着至关重要的作用。

 

三、前端开发中如何实现WebGIS数据可视化

   随着前端开发趋于复杂化,地图(GIS)已经成为大多数系统必不可少的一部分,从最常见的 Gis 可视化(点、线、面、各种弹框、插值)到三维模型、场景模拟、场景监控等。主流的智慧园区、智慧城市、数字孪生等基本都离不开 WebGIS 的开发。

   前端开发中的 GIS 方案:Leaflet、腾讯地图、cesiummapBox

1Leaflet

Leaflet 是一个为建设移动设备友好的互动地图,而开发的现代的、开源的 JavaScript 库。基于Canvas它是由 Vladimir Agafonkin 带领一个专业贡献者团队开发,虽然代码仅有 38 KB,但它具有开发人员开发在线地图的大部分功能。

leaflet 可以通过简单的 Api 快速构建出简单的地图,结合其他的接口(MarkerPopupIconPolylinePolygon等)即可快速实现点、线、面的绘制,社区中也有非常丰富的插件,可以低成本的实现诸如热力图、插值、聚合、数据可视化等功能,需要注意一点 leaflet 只能实现 2D 地图。

 

2、Cesium

   Cesium是国外一个基于JavaScript编写的使用WebGL的地图引擎。Cesium支持3D,2D,2.5D形式的地图展示,可以自行绘制图形,高亮区域,并提供良好的触摸支持,且支持绝大多数的浏览器和mobile

   cesium 最重要的是可以实现三维效果,如果项目中有加载模型(类似园区模型)、场景模拟的需求时,可以选用 cesium 的方式实现(针对预算不足,无法采购其他商用方案时)。

 

3、MapBox

Mapbox GL JS 是一个 JavaScript 库,它使用 WebGL,以 vector tiles Mapbox styles 为来源,将它们渲染成互动式地图。它是 Mapbox GL 生态系统的一部分,其中还包括 Mapbox Mobile,它是一个用 C++ 编写的兼容桌面和移动平台的渲染引擎。

mapbox 也可以快速的实现三维效果、加载模型,与 cesium 比较 mapbox 的操作更加简单。

 

市面上也还有非常的多的解决方案,诸如 openlayers、百度地图、高德地图、腾讯地图等。百度、高德提供的 sdk 也可以实现简单的 gis 效果,但不适用复杂效果的开发,还是推荐对于复杂的地图效果使用专业 gis 解决方案。

 

l leafletmapBoxcesium 数据管理方式的不同:

1leaflet 以图层的方式管理数据,一切的数据(点、线、面)都可以看做成独立的图层,开发者只需要对相应的图层执行挂载、卸载即可;

2mapbox 以资源的方式管理数据,mapbox 最常见的数据管理可以通过加载标准的 geoJson 数据,然后在后续的地图操作中可以指定相对应的资源 id

3:对于普通的前端开发,cesium 推荐使用实体的方案管理地图中的数据,一切皆为实体。

posted @ 2022-11-14 14:07  我就尝一口  阅读(612)  评论(0编辑  收藏  举报