PyQGIS二次开发指南
当你的数据处理使用的是Python语言,而你的导师又让你开发界面,那么PyQGIS二次开发指南是你必读的圣经。QGIS支持Python语言进行二次开发,你将学会如何使用Qt Designer进行界面设计、加载栅格数据、加载矢量数据、软件打包、安装包制作等。

随着GIS应用在国内的逐渐增多,越来越多的行业会需要使用GIS软件进行处理。目前国内的GIS软件基本为ArcGIS,ESRI作为GIS行业的龙头老大,依靠着ArcGIS基本占据着GIS软件的全部江山,其功能丰富强大,且社区最为活跃,但随着近期的俄乌战争,ESRI制裁俄罗斯的事件,还是可以感受到闭源软件的不可控性。

QGIS是一个开源、免费、轻量级的GIS软件,虽然在国内的普及程度不高,但不妨碍其软件的优秀程度。QGIS的软件功能及其丰富,并且还有海量的插件库供不同方向的GIS人员选择,是一个充满活力的开源社区。QGIS是一个使用C++语言开发的软件,其二次开发难度较大,且需要经历复杂的编译、源码理解,需要较高的门槛。

值得庆幸的是,QGIS支持python语言进行二次开发, python作为一个较易上手的胶水语言,在GIS社区较为活跃,例如:GDAL、Shapely、Fiona、RTree、pyproj、GeoPandas、rasterio、GeoDjango等开源框架都可以在python上使用,python语言是一个特别适合GIS领域的语言,更不用说现在火热的机器学习、深度学习都与python密切相关。QGIS的提供的PYQGIS的接口与C++ QGIS的接口基本保持一致,学习PyQGIS也能基本熟悉c++的QGIS,方便后续继续进行深入研究,作为想要入门QGIS二次开发的人员来说再为合适不过了。

本系列的教程将会从二次开发环境配置、pycharm配置、pyqgis语法、qtDesigner使用教程、插件设计等方面,结合笔者在项目中的实践一一展开叙述,希望最后,能在所有的系列教程结束后,让跟着系列做的读者都可以开发出一个属于自己的GIS界面。

界面预览

参考文章