水文水资源的科研和工程实践中一定缺不了GIS工具的使用,熟悉一些常用GIS工具十分有必要。
GIS工具类型繁多,有成套的GIS软件(ArcGIS, QGIS),遥感软件(ENVI),有成熟的3D应用、地图服务、GIS云计算(Google earth engine)等,也有基础的工具,如PostGIS数据库,leafletweb前端可视化工具等,还有最基本的地理空间计算库,如GDAL等。
本repo主要归纳和整理与水文水资源相关的GIS软件、工具和资源,内容大致如下:
- ArcGIS Desktop -> ArcGIS:GIS软件的行业标杆,包括一系列软件,如ArcMap、ArcCatalog、ArcGlobe等,功能强大,有专门针对水文的工具。正版很贵,破解版也很流行。新一代桌面版为ArcGIS Pro,加入了一些机器学习、云计算的东西。还有国产化版本GeoScene。
- QGIS -> QGIS:基本可以认为是免费版的ArcGIS,因为是开源的,所以不会像商业软件那样做的非常详尽,但是应对水文专业GIS应用还是足够的。
- SuperMap iDesktop:国产超图软件,可以看作是ArcGIS的国产版本,功能也很强大。
- Google Earth Engine -> GEE:基于Google平台提供的一站式地理空间处理工具,数据丰富,功能强大,同时需要科学上网。
- Microsoft Planetary Computer:微软推出的GEE竞品,处于内测阶段。
- AI Earth地球科学云平台:国产GEE,刚上线不久。
- AutoGIS -> AutoGIS:主要参考Automating GIS-processes,了解Python GIS 常用的开源库,并给一些实例,方便简单的GIS计算
- GDAL/OGR:处理栅格、矢量数据的基础库。
- Shapely:处理空间分析的基础库。
- Proj:处理地理投影的基础库。
- Fiona:相当于GDAL/GGR在处理矢量数据方面针对Python的优化版本。
- PyShp:针对shapefile格式数据的读写操作。
- NumPy:科学计算基础包,处理矩阵,是GDAL、xarray、PyTorch等的基础。
- matplotlib:强大的绘图工具。
- GeoPandas:pandas的空间扩展,一般的矢量数据用它就够了。
- Rasterio:栅格数据处理利器。
- xarray:用于处理多维数组,支持netcd、grib等格式数据。
- xarray-spatial:基于Numba,用于栅格数据的空间分析。
- PyKrige:可实现各种克里金插值。
- WhiteboxTools:提供地质、地貌、水文、GIS等处理工具。有ArcGIS、QGIS等平台插件。
- 源平台:依托源平台已开发、集成的python库
- wis-processor:常用的GIS工具,如普通克里金插值、泰森多边形等。
- wis-ftpapi:源平台FTP服务器中数据读取的统一接口。
- 其它
- geemap:用于与GEE进行地图交互式编程的Python包。
- leafmap:用于Jupyter环境的可交互式地理空间分析包。
- ArcGIS API for Python:ArcGIS的Python包,不是ArcPy,有点像leafmap。
- SuperMap iClient Python:超图的Python包。
-
数据目录
- 地形:如DEM,包括SRTM、ASTER、ALOS等;水文相关的流向等数据。
- 遥感影像:如Landsat、MODIS、Sentinel等。
- 土地利用:如ESA Land Cover、GlobeLand30、Global land cover、OSM Land Use、**30米年度土地覆盖及其变化等。
- 气候气象:如ECMWF Reanalysis v5、Global Forecast System、Global Precipitation Measurement等。
- 水文:如MERIT Hydro、HydroSHEDS等。
- 夜间灯光:如DMSP/OLS、NPP/VIIRS、珞珈一号等。
- 其它:如Open Street Map、DataV.GeoAtlas等。
-
数据平台
- 前端
- ArcGIS API for Javascript: ArcGIS的前端JS包,目前主要版本是3.x和4.x,其中4.x支持三维可视化。
- OpenLayers:开源的JS包,用于二维WebGIS开发。
- leaflet:一个比较轻量级的前端JS包。
- CesiumJS:主要的三维WebGIS开发开源工具。
- 天地图JS:国家队,用起来有点像ArcGIS API for JS
- 百度地图JS:可以用百度地图的服务,点个点、定位一下、导航一记还是可以的。
- 高德地图JS:同上。
- 腾讯地图JS:同上。
- 地图服务
- OSM
- MapBox
- 天地图:地图API还是不错的,提供各种底图,还能加到比如QGIS或ArcGIS中。
- 百度地图:地图API提供了一些酷炫的效果,Web服务能爬一些数据比如POI、街景等。
- 高德地图:同上。
- 腾讯地图:同上。
- ArcGIS Online:云GIS产品,可试用,提供一些常用的制图和空间分析功能。
- SuperMap Online:云GIS产品,目前可免费使用,简单的制图和分析还是挺方便的。
- 空间数据库
- PostGIS:基于PostgreSQL数据库的空间数据拓展插件,数据库和插件都开源。
- MySQL:最流行的关系数据库之一,目前也支持空间数据的存储。
- Oracle Spatial:Oracle数据库的空间拓展,当然首先得买Oracle。
- ArcSDE:空间数据库引擎,传统的空间数据存储解决方案,支持在各种关系数据库的基础上储存和管理空间数据。
- GIS服务器
- ArcGIS Server:现在是ArcGIS Enterprise的一部分,用于发布地图服务等WebGIS服务,与ArcGIS Desktop配合使用,价格更贵。
- GeoServer:开源的WebGIS服务器,基于J2EE实现。
- MapServer:开源,NASA出品,功能可能弱于GeoServer。
- SuperMap iServer:和超图桌面端一样,集成了很多功能,支持机器学习服务。
- 在线资源
- 公众号:GIScience
- B站:geemap、Coursera公开课(有关于GIS的课程)
- CSDN:GEE数据集专栏