《WebGIS快速开发教程》写好啦_WebGIS小智的博客-CSDN博客
这篇文章从几个方面来为大家推荐我们常用的GIS工具软件(包括二三维),以及框架。
每款产品的星级代表了该产品在我心中的地位与强大程度,满分5星
1.单机版(非web端)GIS软件
(1)arcgis ★★★★☆
arcgis是一个成熟的稳定的,具有丰富GIS功能的单机版GIS软件,唯一的缺点就是不适用于mac电脑,在苹果机器上没办法发挥自己的强大功能,arcgis也是业界最早具有多种数据格式,坐标系,存储格式类型,以及数据转换,数据分析等强大的GIS功能于一体的软件。它的强大我相信每一个从事GIS行业的人都应该有所了解。
(2)Qgis ★★★☆☆
Qgis是一款开源的支持windows,mac等多平台的gis软件,qgis 的功能也很丰富全面,除了具有一些和arcgis一样的常规的gis功能以外,qgis还支持与gis开源服务器geoserver的配合。支持wms,wfs等常规的开源gis服务标准,另外qgis还支持对postgresql数据库的支持,支持操作数据库中的gis数据,一句话总结概括qgis就是arcgis的多平台扩展版本,是arcgis的一个非常不错的替代品。
(3)mapgis ★★☆☆☆
mapgis是国内的由武汉某公司研发的一款gis软件,该软件的特色是GIS空间分析,包括路径分析,TIN模型分析,最佳路径,空间定位等等多种GIS空间分析功能,mapgis相对来说比较小众话,因为其功能特色偏重于空间分析,功能宽度不够,因此业界使用的不是很多。
(4)cesiumlab ★★★☆☆
cesiumlab是一个三维数据模型处理平台,虽然叫做平台但它却是桌面端的应用,它能够处理各种三维格式的数据,并将其转换成其他格式,例如gltf手工模型,倾斜摄影,以及各种3d tiles标准的三维模型数据。
2.web端工具
(1)mapshaper ★★★☆☆
mapshaper是一个非常好用的web端的gis工具,它经常用来前端的gis数据格式之间的转换以及简单的数据预览和数据处理。mapshaper可以支持用户在浏览器端上传shape数据,geojson数据以及svg等等类型的矢量数据,它首先可以对这些上传的数据进行预览,然后还可以非常方便的进行数据转换,例如shape转geojson,特别神速以及准确。另外它还可以进行数据的抽稀,有的多边形边界过于复杂它还可以将其简化。还支持各种数据类型的导出,非常的好用,我自己也在经常用。
(2)geojson.io ★★★★☆
这也是一款强大的非常好用的工具,它是由mapbox一直维护的一个数据构建平台,假设你需要一些模拟gis数据(点,线,面)等,你可以通过这个平台手动的绘制一些数据,并且可以给这些数据附带属性数据,编辑完成后还支持导出各种格式的gis数据,另外这个平台也支持加载本地的数据进行预览个编辑,甚至比mapshaper更加强大,你可以对既有的数据的属性数据进行编辑,就是一个网页版的小型的arcgis。缺点就是这个站点的访问速度通常很慢,不过可以上github上下载源码启动并且部署在本地。
(3) 阿里云 ★★☆☆☆
这里的阿里云是指阿里云的dataV数据可视化平台,它提供了全国的行政区划的矢量数据的下载,数据的新旧程度还是相当可以,基本上就是去年和前年的行政区数据,最小的行政区单位能精确到县(区)级。需要行政区数据的朋友可以选择从这个平台下载。
3.web端框架
(1)openLayers ★★★★★
openlayers是一个非常强大的前端框架,由于之前的文章我详细的介绍过,并且我还有关于openlayers 的专栏,大家有兴趣可以自己去看,专栏以及文章地址:
https://blog.csdn.net/lz5211314121/category_11021671.html?spm=1001.2014.3001.5482
(2)mapbox★★★★☆
mapbox也是一个非常强大的好用的前端gis框架,它和openlayers的侧重点不同,关于它我也有详细的介绍和专栏,地址在这里:
https://blog.csdn.net/lz5211314121/category_11992359.html?spm=1001.2014.3001.5482
(3)leaflet ★★☆☆☆
leaflet也是一个前端的gis框架,不过它侧重的是移动端的gis展示,该作者是乌克兰人,目前由于俄乌关系作者在自己的官网上强烈的谴责了俄罗斯,这个框架也能满足一些gis的基本需求,它没有前面两个框架那样的复杂,小巧轻量方便。
(4)maptalk ★★★☆☆
maptalk是国内某大神研发的gis框架,我个人感觉还是很强大的,但不知为何这个框架比较小众化,用的人比较少,它同时支持2D/3D两种模式,非常的强大,矢量渲染能力介于mapbox和leaflet之间。这个框架在未来一定会获得越来越多的人的青睐。
(5)cesium★★★★☆
cesium是一个前端最受欢迎的三维的gis框架,它功能丰富全面,渲染能力也不错,底层基于webgl,非常的强大,支持多种三维数据格式,关于cesium,我也有自己的专栏来不断的更新和介绍,地址在这里:
https://blog.csdn.net/lz5211314121/category_11967406.html?spm=1001.2014.3001.5482
(6)three.js ★★★☆☆
three.js是一个基于webgl的前端的专注于三维渲染的库,它相较于cesium接口更加的底层和基础,封装的程度不高,但同时足够的灵活和多变,three.js专注于场景内的三维逻辑,通常适用于给工厂,粮仓等具体的局部的场景来做三维场景演示。
(7)turf.js★★☆☆☆
turf.js是前端的一款进行空间分析的js库,能提供很多对于矢量图形的计算,包括矢量图形之间的空间分析等,操作简单上手容易,官网示例和文档也较多。如果你需要在前端进行简单的少量的空间分析可以使用此库。
4.数据库
(1)postgreSQL ★★★★☆
pg几乎是业界唯一的地理空间数据库,当然并不是唯一存在的,但却是唯一使用者最多的空间数据库,什么?你跟我讲mysql的空间扩展?那是什么lj?pg非常的强大,并且还开源,如果你想自己搭建GIS服务,那么pg库将是你必不可少的组成部分之一,基于pg库和postgis搭配起来的空间分析,空间查询,以及空间数据存储将是开源的gis服务最强大最核心的部分。
(2)postGIS ★★★☆☆
postgis严格意义上来讲算个插件,它是服务于postgresql数据库的一个插件,它提供了众多的对于gis矢量数据操作和处理的函数,比如获取图形边界,图形相交,范围查询,图形面积计算等等各种图形的空间分析,postgis就是服务端(数据库)进行gis分析的最主流的手段。上手也比较简单,官网上都有示例和文档说明,不用刻意记忆,用到的时候去查询即可。
5.服务端技术
(1)geotools ★★★☆☆
geotools是基于java语言的gis处理工具,geotools和java的关系就像是openlayers和js的关系,另外大家所熟知的geoserver就是用geotools开发的。所以geotools学好了还是非常强大的,它在服务端可以进行很多的gis操作,最常用的就是服务端shape文件转geojson。当然如果你深度挖掘它几乎可以做到任何前端可以做到的gis操作。
(2)GDAL ★★☆☆☆
GDAL是一个非常底层的用于操作gis矢量数据和栅格数据的库,GDAL支持多种语言(c++,python,java等),这么讲它也是一个跨平台的库,GDAL特色在于它能够对栅格数据进行非常强大的处理,甚至有人说它是一个图像处理库,这么说其实也没毛病,它支持几乎所有格式的gis栅格数据(tiff,img)等等。另外对于GDAL使用最多的基本上是矢量数据转为栅格数据。
6.服务器工具
(1)GeoServer ★★★☆☆
geoserver不用我多说了,这几乎是你需要的免费的开源的gis服务器的首选,对于geoserver我之前有一篇文章进行了专门的讲解:
GIS系列(四)GeoServer的介绍和用法_疯狂的GISer的博客-CSDN博客_geoserver
(2)ArcgisServer ★★☆☆☆
arcgisserver也是一个不错的gis服务器,但是由于其不开源收费的限制,现在用的并不多,并且比起geoserver来,它的功能也过于点掉,只能发布一些常规的wfs,wmts服务,除此之外也没有什么别的更加惊艳的操作,并且它的使用还必须的伴随着arcgis,而且还得是特定版本的arcgis,因此几乎现在除了部分老客户,已经基本处于被抛弃的状态。(不开源的东西很难走远)
7.技术博客类
(1)疯狂的GISer ★★★★★
对于GIS方面的技术博客,我一定是最丰富全面的。如果你想学习更多的GIS知识,关注我就好了,我在这里第一时间为大家分享GIS领域的方方面面。