Course Code: pyqgis
Duration: 35 hours
Prerequisites:

A prior experience with Python and the libraries like pandas, matplotlib is highly recommended along with a knowldege around visualization tools and API usage.

Overview:

A geographic information system (GIS) is a system designed to capture, store, manipulate, analyze, manage, and present spatial or geographic data. The acronym GIS is sometimes used for geographic information science (GIScience) to refer to the academic discipline that studies geographic information systems and is a large domain within the broader academic discipline of geoinformatics.

The use of Python with GIS has substantially increased over the last two decades, particularly with the introduction of Python 2.0 series in 2000, which included many new programming features that made the language much easier to deploy. Since that time, Python has not only been utilized within commercial GIS such as products by Esri but also open source platforms, including as part of QGIS and GRASS. In fact, Python today is by far the most widely used language by GIS users and programmers.

This program introduces Python, its usage along with its advance libraries like geopandas. 

This program also covers QGIS - an open source geographic information system (GIS) software that allow users to analyze and edit spatial information, in addition to composing and exporting graphical maps. QGIS supports both raster and vector layers; vector data is stored as either point, line, or polygon features. Multiple formats of raster images are supported, and the software can georeference images. To summarize it allows the users to Create, edit, visualise, analyse and publish geospatial information on Windows, Mac, Linux, BSD.

The QGIS module, in its first phase, introduces the QGIS interface for general usage. In the second phase, we introduce PyQGIS - the python libraries of QGIS that allows the integration of GIS functionalities in your python code or your python application, so that you may even create your own Python Plugin around a particular GIS functionality.

Course Outline:

Introduction to Python Libraries

  • Quick Introduction to Python and Python Libraries like numpy and pandas

GIS, GeoPandas, Geocoding and Bokeh

  • GIS Introduction(what is GIS and its application)
  • GIS Modeling in Python
  • GeoPandas, Geocoding and Quick overview of Bokeh

Introduction to QGIS

  • QGIS Overview
  • QGIS GUI
  • General Tools
  • QGIS Configuration
  • Working with Projections
  • QGIS Browser
  • Working with Vector Data
  • Working with Raster Data
  • Working with OGC Data
  • Working with GPS Data

PyQGIS

  • Introduction to PyQGIS
  • Loading Projects
  • Loading Layers
  • Using Raster Layers
  • Using Vector Layers
  • Geometry Handling
  • Projections Support
  • Using Map Canvas
  • Map Rendering and Printing
  • Expressions, Filtering and Calculating Values
  • Reading And Storing Settings
  • Communicating with the user
  • Developing Python Plugins
  • IDE settings for writing and debugging plugins
  • Using Plugin Layers
  • Compatibility with older QGIS versions
  • Releasing your plugin