首选对一些基本概念进行说明。 包括地理信息系统、开源软件、Python语言等。
GDAL是用于栅格数据读写的底层库。
Python 中有 GDAL ( Geospatial Data Abstraction Library) 绑定用于访问GIS字段中使用的许多不同类型的栅格数据文件。 这个绑定扩展了 Python,但很少为 GDAL 的 C 语言 API提供抽象。 这意味着使用它们的 Python 程序趋向于像C程序一样读取和运行。 例如,GDAL 的 Python 绑定要求用户注意空的C指...
读取GIS矢量文件时,可用 Fiona的 open 函数,再用 'r' 参数打开。返回类型为 fiona.collection.Collection 。
GIS应用中投影的概念非常重要,也是区别于其它系统的关键之处。
由Shapely提供的几何对象的基本类型包括点, 曲线,和曲面。 每一种都与三套平面的点 (可能无限)相联系。 一个要素的内部, 边界, 外部是相互排斥的,并且它们的并集与整个平面重叠。 点的内部有一个点,边界没有点,点的外部包括其它所有点。点的拓扑维数是0。 曲线有沿其长度的无穷多个点组成的内部集 (想象一个点在空间拖动), 包括2个端点的边界集, 和包括其它所有点的外部...
OSDBs在许多时候都受到了广泛的关注, 其中MySQL,PostgreSQL,Ingres,Firebird以及MaxDB最为流行; 如果你想在空间数据开发中使用开源数据库的话, 目前有三种选择:MySQL、PostGIS与SpatiaLite。 每一种都有其优点及缺点,没有哪种选择是适合所有情况的, 而且每种数据库,可能会有其特有的扩展方法。 MySQL,由于其双重许可(...
这一章介绍使用 Mapnik 进行地图制图。 Mapnik 的安装相对较难,在 conda 中尚无法安装使用。 目前推荐的方法是使用 Debian / Ubuntu 系统环境,这二者都有打包好的 Mapnik 可以直接使用。
Cartopy是要取代 Basemap的一个模块,同样使用了 Mapplotlib 作为底层的绘图库。 在较长的时间内,Cartopy一直是与 Basemap 并存的; 但是在 2022年5月13日, Basemap从 Debian testing 中移除了,这可能意味 Basemap 会被弃用, Cartopy 会得到更广泛的应用; 对于用户来讲,安装是否方便是决定其是否使...
GeoPandas 是基于 Pandas 开发的地理信息分析工具。 从某种意义上来讲,GeoPandas并不是一个库,而是一个完整的工具甚至软件。 只不过这个软件并不是通过GUI进行操作的,而是供掌握一定Python编码能力的用户。 这些人也并非传统意义上的软件开发人员,而是通过代码驱动来做数据处理与分析的用户。 这里没法对 Pandas 涉及的概念介绍太多,如果对这些内容了...
WebGIS 使用 Web 技术实现地理空间数据的管理、应用与查看。 在这个领域 Python 提供了众多的专用工具与通过工具作为辅助。
《Python与开源GIS:数据处理、空间分析与地图制图》于2019年11月份出版,正式发售。 本书从应用开发角度,根据作者几年的工作经验,介绍 Python 语言在开源 GIS 中的应用。 希望能够籍此机会,使得开源 GIS 能够得到应用,并进一步推广开源 GIS 的理念与技术。 书中主要以空间数据的处理、分析以及地图制图为主线。 在选择内容时,以目前最为经典、 常用的类库...
本章说明如何用Basemap进行地图可视化。 要注意,Basemap 目前已经不再进行维护,未来会被弃用。 在Debian 12中已经从软件库中移除了Basemap。 这些内容仅保留作为参考,如果有旧的系统或代码使用了 Basemap 可以看一下。 不建议学习使用,可以使用 Cartopy 作为替代。 目前 conda 仓储库中还在维护着 Basemap,...
为了方便学习Python语言,基于Jupyter技术栈搭建了在线计算环境。 用户使用时以网页形式打开,对照书中内容进行学习,在线编写代码和运行代码,代码的运行结果也会直接显示。如在编程过程中需要编写说明文档,可在同一个页面直接编写,便于作及时的说明和解释。
在数据科学、机器学习及深度学习的领域里,Jupyter是一个强大的工具,它集成了代码编写、可视化展示、文档记录等多种功能于一体,让科学计算变得既直观又高效。 随着数据科学和人工智能领域的不断发展,Jupyter 也在不断更新和完善其功能和性 能。 未来可以期待看到更多创新的特性和工具被加入到 Jupyter 中,从而进一步推动科学计算和数据分析的发展。