Ujaval Gandhi
Want to learn QGIS in a structured way? Check out Spatial Thoughts for more learning materials and instructor-led online programs with QGIS.org certification.
These tutorials are also available in many other languages. Please see translations page.
Introduction
Making a Map (QGIS3)
Working with Attributes (QGIS3)
Importing Spreadsheets or CSV files (QGIS3)
Basic Vector Styling (QGIS3)
Calculating Line Lengths and Statistics (QGIS3)
Basic Raster Styling and Analysis (QGIS3)
Raster Mosaicing and Clipping (QGIS3)
Working with Terrain Data (QGIS3)
Working with WMS Data (QGIS3)
Working with Projections (QGIS3)
Georeferencing Topo Sheets and Scanned Maps (QGIS3)
Georeferencing Aerial Imagery (QGIS3)
Digitizing Map Data (QGIS3)
Searching and Downloading OpenStreetMap Data (QGIS3)
Performing Table Joins (QGIS3)
Performing Spatial Joins (QGIS3)
Performing Spatial Queries (QGIS3)
Nearest Neighbor Analysis (QGIS3)
Sampling Raster Data using Points or Polygons (QGIS3)
Calculating Raster Area (QGIS3)
Creating Heatmaps (QGIS3)
Animating Time Series Data (QGIS3)
Handling Invalid Geometries (QGIS3)
Advanced Raster Analysis (QGIS3)
Interpolating Point Data (QGIS3)
Batch Processing using Processing Framework (QGIS3)
Automating Complex Workflows using Processing Modeler (QGIS3)
Automating Map Creation with Print Layout Atlas (QGIS3)
Multi Criteria Overlay Analysis (QGIS3)
Basic Filtering and Styling with Expressions (QGIS3)
Creating a Block World Map (QGIS3)
Styling a River Network with Expressions (QGIS3)
Styling Contours in 3D (QGIS3)
Creating Isometric Buildings (QGIS3)
Making Interactive Canvas Maps (QGIS3)
Making Interactive Reveal Maps (QGIS3)
Creating an Animated Cartogram (QGIS3)
Basic Network Visualization and Routing (QGIS3)
Locating Nearest Facility with Origin-Destination Matrix (QGIS3)
Service Area Analysis using Openrouteservice (QGIS3)
Travel Time Analysis with Uber Movement (QGIS3)
Calculating Areal Mean Rainfall (QGIS3)
Creating a Colorized River Basin Map (QGIS3)
Creating a Landuse Map (QGIS3)
Calculating Street Intersection Density (QGIS3)
Determining Landuse Buffer Zones (QGIS3)
Mapping Waste Disposal Volumes (QGIS3)
Getting Started With Python Programming (QGIS3)
Running Processing Algorithms via Python (QGIS3)
Using Custom Python Expression Functions (QGIS3)
Writing Python Scripts for Processing Framework (QGIS3)
Building a Python Plugin (QGIS3)
Building a Processing Plugin (QGIS3)
Running and Scheduling QGIS Processing Jobs
Using Plugins (QGIS3)
QGIS Learning Resources
Data Credits
This work is licensed under a Creative Commons Attribution 4.0 International License