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 own 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 tutorial + Python for your custom purposes
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 exactly where we’ll focus in this course so that you know exactly how to use plugins. As you may already know, Python is a versatile coding language which 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++.
The scope of this QGIS tutorial
This QGIS 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 course.
The purpose with 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 plugins instead of searching for links to imagery servers, I’ve provided those in the course material. I’ll explain how to import, display them and automate the process as we develop plugins.
Cover multiple topics of Python development
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 course is detailed enough to get deeper than just scratching the surface. I’ll meet you in class!
I have a BSc Degree in Wildlife and Fisheries and GIS and a MSc Degree in Watershed Science and Ecology. The majority of my work experience is in academic and government research where I developed and implemented numerical and spatial models for natural resources management. I enjoy teaching GIS and programming, and want to share how free, open source options for GIS analysis and cartography that can be used for basic and complex analyses without purchasing expensive software.