QGIS1 : QGIS Python Plugin development


QGIS is an OpenSource Desktop GIS application, with a very strong dynamism and a growing range of features. QGIS provides the ability to extend the main application through a plugin mechanism, written in the Python scripting language.

This training session is dedicated to QGIS Advanced users. It does not need any previous Python knowledge, but a good general IT knowledge is required. You will learn how to develop QGIS Python extensions .

This training session begins with Python programming language basics. It then presents you the development environment for QGIS, QGIS project and code organization and PyQT, the Python library used for GUI development in QGIS.

We then focus on Python plugins development, starting with a very simple extension, up to more complex interfaces.


The course will give you the following skills :

  • Know the development environment for QGIS Python plugins development
  • Know QGIS plugin structure
  • Know PyQT bases
  • Discover the Python QGIS API
  • Know how to develop a QGIS plugin from scratch


5 days


Good IT knowledge
GIS knowledge
QGIS knowledge as a user.
Recommended : experience in programming (in any language)


This program is indicative. It could be adapted to your specific needs.

  • QGIS project organization
  • Python plugin development environment
  • Learning Python
    • Types and data structures
    • Control structures
    • Classes and modules
    • Standard library
  • QGIS Code organization
  • PyQt
    • Introduction
    • General concepts
    • Examples
    • Layout management
    • Events and signals
    • Dialog windows
    • Widgets
  • QGIS plugin structure
  • Simple plugin analysis
    • Basic plugin development
    • Create a new plugin
    • Add the plugin to QGIS
    • Add new features
    • Maintain the plugin up-to-date
    • Create a plugin repository
  • Where to find documentation ?
  • QGIS Python API overview
  • Advanced PyQt use
    • QtWebkit
    • QtDesigner to create interfaces
  • Advanced plugin creation
    • Interface design with QtDesigner
    • Adding features

QGIS1: QGIS Python

plugin development

The next courses in Paris :

17-21 April 2017

23-27 October 2017

Contact us for on-site trainings (dates are flexible to your needs).