本节摘要:GIS 工具生态庞大。本附录梳理常用工具、库、数据源、学习资源——GIS 开发的工具箱和进阶指南。
阅读完本附录,你应当能够:
| 软件 | 类型 | 特点 |
|---|---|---|
| QGIS | 开源 | 免费,Python 插件,社区活跃 |
| ArcGIS Pro | 商业 | ESRI 生态,功能最全 |
| GRASS GIS | 开源 | 栅格/地形分析强 |
| gvSIG | 开源 | 西班牙,国际项目 |
| MapInfo Pro | 商业 | 商业,易用 |
| 数据库 | 特点 |
|---|---|
| PostGIS + PostgreSQL | 开源首选,功能全 |
| Oracle Spatial | 商业,企业级 |
| SQL Server Spatial | 微软生态 |
| Spatialite | SQLite 空间扩展,轻量 |
| MongoDB | 内置 GeoJSON 查询 |

| 服务器 | 特点 |
|---|---|
| GeoServer | 开源,Java,OGC 全套 |
| MapServer | 开源,C,轻量 |
| QGIS Server | 开源,QGIS 同引擎 |
| ArcGIS Server | 商业,ESRI |
| 库 | 类型 | 特点 |
|---|---|---|
| OpenLayers | 二维 | 功能全,OGC 支持 |
| Leaflet | 二维 | 轻量,易用 |
| Mapbox GL JS | 二维 | 矢量瓦片,WebGL |
| Cesium | 三维 | 三维地球,3D Tiles |
| Three.js | 三维 | 通用 3D |
| deck.gl | 三维 | 大数据可视化 |
| 工具 | 特点 |
|---|---|
| GDAL/OGR | 开源栅格/矢量处理库,命令行 |
| FME | 商业,可视化数据转换 |
| GeoTools | Java GIS 库 |
| Shapely | Python 几何操作 |
| Turf.js | JS 客户端空间分析 |
| 数据源 | 内容 |
|---|---|
| OpenStreetMap | 全球矢量,开源 |
| Natural Earth | 全球小比例尺 |
| SRTM | 全球 DEM 高程 |
| Sentinel/Landsat | 遥感影像 |
| Geofabrik | OSM 按区域下载 |
| 天地图 | 中国官方 |
| 资源 | 类型 |
|---|---|
| 《地理信息系统导论》 | 教材 |
| 《GIS Algorithms》 | 算法 |
| PostGIS 官方文档 | 文档 |
| QGIS 官方文档 | 文档 |
| OGC 标准 | 规范 |
| Awesome GIS | GitHub 资源集 |
| 领域 | 应用 |
|---|---|
| 国土规划 | 用地、规划、不动产 |
| 交通 | 导航、规划、监控 |
| 水利 | 流域、防汛、水资源 |
| 农业 | 精准农业、估产 |
| 环保 | 监测、评估 |
| 应急 | 灾害、响应 |
| 商业 | 选址、LBS |
💡 关键直觉:开源栈(QGIS+PostGIS+GeoServer+OpenLayers/Cesium)够用大部分场景。按需求选商业组件补充。学习路径:基础→工具→数据库→服务→前端→进阶。
本教程的所有示例都可以在一台电脑上跑起来。推荐用 Docker 组合环境:
# 启动 PostgreSQL + PostGIS docker run -d --name postgis -p 5432:5432 -e POSTGRES_PASSWORD=postgres postgis/postgis # 启动 GeoServer docker run -d --name geoserver -p 8080:8080 kartoza/geoserver # 桌面端装 QGIS(各系统安装包官网下载,或包管理器安装)
-- 建一个测试库并启用 PostGIS CREATE DATABASE gis_test; \c gis_test CREATE EXTENSION postgis;
有了这三个组件,第 2 到第 4 章的所有 SQL 和发布练习都能完成。前端部分直接在浏览器里跑 OpenLayers 官方示例改一改即可,不用搭构建工具。
基础路线走完后,按方向深入:
每个方向完成一个"从数据到成果"的小项目,比刷十篇教程都有效。
问:学了这么多工具,实际项目怎么选型?
答:默认开源栈起步(QGIS + PostGIS + GeoServer + OpenLayers/Cesium),遇到明确需求再替换:要国产化合规底图换国内厂商 SDK,要企业级安全用 ArcGIS 生态。选型的依据永远是需求和预算,不是技术偏好。
问:需要先学测绘吗?
答:不需要系统学测绘,但坐标系、地图投影、数据精度这三块基础概念一定要懂,第 1 章和第 8 章覆盖了。
问:做 GIS 开发要会多少数学?
答:日常开发够用线性代数和几何基础即可;做空间分析算法或遥感方向才需要更深的数学。遇到公式先理解"解决什么问题",用到时再深挖。
问:怎么保持技术更新?
答:跟 OGC 新标准、PostGIS 发布说明、前端框架更新日志;参加 OSGeo 社区活动;每年做一个新方向的小项目。
| 术语 | 含义 |
|---|---|
| CRS | 坐标参照系,定义坐标如何解释 |
| EPSG | 坐标系编码标准 |
| WMS | 网络地图服务(出图) |
| WFS | 网络要素服务(取矢量) |
| WMTS | 网络地图瓦片服务 |
| MVT | 矢量瓦片格式 |
| LOD | 细节层次,按距离切换模型精度 |
| GiST | PostGIS 使用的空间索引类型 |
| SRID | 空间参考标识符 |
| 拓扑 | 空间对象间的关系规则 |
至此 GIS 开发指南全部完成。从理论基础到工程实践,希望帮你建立完整的 GIS 开发知识体系。