Learn how you can use hundreds of Python plugin variants to extend QGIS. The skills you’ll develop in this QGIS tutorial will get you prepared for developing your plugins for QGIS so that your needs are satisfied. Extend QGIS capabilities with Python to play with raster and vector layers and do much more on the geographic information system like a professional!
QGIS is a powerful programming interface where you can use a broader range of software functions and also write scripts for task automation. Python is supported in QGIS for scripting, and that’s where we’ll focus on this QGIS Python tutorial so that you know exactly how to use QGIS. As you may already know, Python is a versatile coding language that is used in a wide array of tasks, including the GIS world. You can combine the two to enable more productivity in your work as you’ll be able to automate workflows. Added benefit – your work will be reproducible. One of the main advantages of choosing Python plugin development is the simplicity of distribution and more comfortable overall development compared to, for example, C++.
This QGIS Python tutorial is intended to help you master all the steps necessary to extend QGIS using custom plugins scripted with Python. You’ll cover parts from software installation and setting up your environment to implementation of geoprocessing.
To be able to start your work, you’ll first install QGIS for plugin development and then set up the configuration in PyCharm so that it recognizes and is ready to use QGIS Python interpreter and libraries. I will also teach you to develop the base files for new QGIS plugins, as well as metadata. You’ll practice deploying the created plugin so that other users could find it.
The scope of this QGIS tutorial will extend to the development of two different plugins, so let me briefly introduce them both so you know what you can expect and do with them as you finish the QGIS Python tutorial.
The purpose of the first plugin is to practice using raster and vector data to be able to see how to use QGIS (and other geospatial libraries) to load data into QGIS dynamically. We’ll develop and customize a GUI for data loading and performing the analysis. After analysis, we’ll save and display the results in the QGIS map canvas.
Working with the second plugin, we’ll put our hands on importing and displaying existing satellite imagery servers in our QGIS interface. We’ll have a little play around with Google, Bing, or ESRI servers. To help you focus more on how to use QGIS instead of searching for links to imagery servers, I’ve provided those in the QGIS Python tutorial material. I’ll explain how to import, display them, and automate the process as we develop plugins.
In this QGIS tutorial, we’ll also cover the topics of development of graphical user interface and data management; we’ll spend time analyzing geospatial data, tap into object-oriented programming, and, of course, code deployment. Lots to learn, but the QGIS Python tutorial is detailed enough to get more profound than just scratching the surface. I’ll meet you in class!
Konrad Hafen is a spatial scientist with a BSc degree in Wildlife & Fisheries and GIS and an MSc Degree in Watershed Science and Ecology. He has substantial experience in academic and government research developing and implementing numerical and spatial models for natural resources management.
Konrad Hafen has a great passion for teaching GIS and programming. He shares his experience with others on his website opensourceoptions.com and on YouTube channel where you can find tutorials and courses on GIS programming and data science.
Konrad Hafen is joyful to share his experience through online courses here on BitDegree. He will help you to get a better understanding of QGIS, Python, and PyCharm. You’ll learn how to develop Python plugins to extend QGIS functionality, use QGIS Python libraries for basic GIS data management, and much more. So are you ready to boost your knowledge? Join his course and start learning today!