QGIS二次开发(3)-PyQGIS开发环境配置
从本节开始,我们正式进入PyQGIS的开发教程。让我们从PyQGIS的开发环境搭建开始吧!
工具准备
搭建一套PyQGIS开发环境,我们需要安装如下工具:
- QGIS客户端软件,最好是ltr版本,本次以3.34版本为例。 可以直接到官网下载。
- PyCharm , python开发的IDE。
配置步骤
新建python项目,选择python解释器为:
{OSGeo4W_root}/bin/python-qgis-ltr.bat。{OSGeo4W_root}代表OSGeo4W的根路径。
配置Pyqt开发需要的额外工具,主要是DESIGNER UIC RCC三个工具。为了方便使用,在Pycharm中以 External Tool 的形式引入。
- QTDesigner: QT界面设计工具
- Working directory:
\$FileDir\$
- Working directory:

- UIC: QT 界面编译工具
- Working directory:
\$FileDir\$ - Arguments: -m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py
- Working directory:

RCC : QT 资源编译工具
Working directory:
\$FileDir\$Arguments: -m PyQt5.pyrcc_main $FileName$ -o $FileNameWithoutExtension$_rc.py

- QTDesigner: QT界面设计工具
包管理
QGIS客户端的自带了一套完整的python环境,预先安装了包括 pyqt5 , gdal ,pyproj 在内的多个依赖库。根据业务需要,也可以手动安装需要的其它依赖包。
1
./bin/python-qgis-ltr.bat -m pip install -r requirements.txt
跑个程序试试
经过一系列复杂的安装和配置之后,我们终于完成的PyQGIS开发环境的搭建。下面跑个程序试试吧。
在mian函数中引入qigs包,获得qgis的版本并打印。
1 | from qgis.core import Qgis |
第一个PyQGIS界面程序,启动!
我们需要回忆(或者重新学习)一下pyqt5的相关知识。pyqt5是一个qt5版本在python中的封装库,几乎可以在python环境中使用qt相关的所有功能。
现在我们想要实现一个主界面,主界面的中央是一个qgis的画布,显示一个随机生成的点图层。
1 | import sys |
新建一个QGISMainWindow 继承自QMainWindow,用来描述主界面
新建一个 QgsMapCanvas对象,放置到中央窗体中
创建两个工具按钮,用于刷新和缩放到点图层
createRandomPointLayer 函数用于创建随机点图层。更多的细节将在之后的章节中详细阐述,包括图层创建、要素属性设置、内存管理等。
最终运行成果如下图:

结语
本小节我们完成了一个PyQGIS开发环境从无到有的配置。跟随笔者的步伐,我们可以轻松的创建出第一个PyQGIS界面程序。请大家一定要动手实现哦。
如果你觉得有所帮助,不妨为我买杯咖啡吧。
