《Python与开源GIS》在Ubuntu 20.04 LTS下的测试说明及其他

《Python与开源GIS》在Ubuntu 20.04 LTS下的测试说明及其他


发布日期: 2020-06-13 更新日期: 2020-06-13 编辑:bukun 浏览次数: 8581

标签:

摘要: 《Python与开源GIS》的写作过程中主要在Debian/Ubuntu系统下进行测试,所针对的版本主要是Debian 9、Ubuntu 18.04与Debian 10。书的出版是在2019年11月份,而在2020年4月底Ubuntu 20.04 LTS 正式...

《Python与开源GIS》的写作过程中主要在Debian/Ubuntu系统下进行测试,所针对的版本主要是Debian 9、Ubuntu 18.04与Debian 10。书的出版是在2019年11月份,而在2020年4月底Ubuntu 20.04 LTS 正式发布。Ubuntu 20.04 的改进主要包括内核的更新、对文件系统的改进支持,Python版本升级到3.8.2 ,对于桌面用户来讲可能在界面感观上有一些变化。而 Canonical 与微软的合作使得在 Windows 10 WSL 中可以马上使用新版本的 Ubuntu 。

一本书出版之后其内容很难如电子文档一样对内容进行更新,尽管如此,我还是希望尽量延长其技术生命力,所以在 Ubuntu 20.04 LTS 系统中进行了实验测试,令人欣慰的是书中的工具安装方法没有改变,绝大部分代码都可以在 Ubuntu 20.04 中执行无误。其中一些问题可能会在后续重印过程中反映出来,在这里先进行一些说明供使用参考。

  1. Python 模块 pyproj 的版本更从 1.9 更新到 2.5 ,有一些变化。核心的PROJ库也有更新,但是已经很稳定了。在pyproj 2.0版本中,引入了新的类 pyproj.CRS ,用于对坐标参考系统(CRS)进行管理。由于这些改变,原本在 pyproj.PROJ 为类中的一些方法移到了 CRS 类中,导致书中第136页小节 4.3.1 中最后部分“6.其它函数”的代码运行出错,这个问题有书友指出过。pyproj版本的更新对书中其它内容并没有什么影响,但是对于类 pyproj.CRS 内容的介绍却是书中未涵盖的,若有可能希望再版过程中可以弥补。
  2. 书中第334页中间代码处(小节9.4.5的最后部分),第1行代码两个几何对象进行 difference() 操作可以执行,但是第二次代码对结果进行制图时调用 plot() 函数出错。这个问题我感觉是个 bug ,在Ubuntu 20.04 中带的 geopandas 库为 0.7.0, 对于2019年发行的 Debian 10带的 geopandas 0.4.0,更新也很大。

除了上面两处问题,书中的代码在 Debian 9、Debian 10与 Ubuntu 18.04、Ubuntu 20.04中都可以执行。Ubuntu 20.04作为LTS版本有5年的支持时间,在2025年4月之前可获得安全维护与更新。这样本书也能有较长时间的参考价值。

还有一点要说明的是 GDAL/OGR 的版本在Ubuntu 20.04 中更新到了3.0.4,包括其Python模块。GDAL是许多GIS软件与工具的底层库,这次也是首次在Linux 发行版中将大版本更新到版本3。幸运的是书中相关代码都可以执行无误,感谢GDAL的开发人员。

有书友指出书中内容需要用Linux,未关注Windows下的使用方法。这个问题在配套网站中补充了 Windows 下的相关方法,对于 Windows 系统下的安装运行,推荐使用 Anaconda 环境。

同时感谢给予鼓励与指出问题的各位朋友。

关注公众号
获取免费资源

随机推荐


Copyright © Since 2014. 开源地理空间基金会中文分会 吉ICP备05002032号

Powered by TorCMS

OSGeo 中国中心 邮件列表

问题讨论 : 要订阅或者退订列表,请点击 订阅

发言 : 请写信给: osgeo-china@lists.osgeo.org