Topics
Every subject on the site, grouped into areas. Each topic page brings the concepts, the how-to guides and the fixes for that subject onto one page.
There are three ways to find things here, and this is the one to use when you know the subject but not the guide. A topic page answers "what does this site have on CRS?" — all of it, in the order that usually works: the concept first, then the task, then the error you are about to hit.
If you would rather follow a route than pick a subject, the learning paths string guides into ordered sequences. If you know the kind of help you need rather than the subject, browse by concept, how-to or fix.
Fundamentals
What the objects, files and libraries actually are.
-
Getting started
A working install, your first GeoDataFrame, and what Python GIS is for.
19 guides → -
Files & formats
Reading and writing shapefiles, GeoPackages, GeoJSON and CSV — and what breaks in each.
52 guides → -
Data sources & downloads
Getting the data in the first place: OpenStreetMap, web services, satellite catalogues and geocoders.
18 guides →
Geometry & space
The shapes themselves, where they sit on the earth, and how they relate.
-
Geometry & topology
Clipping, buffering, dissolving and overlays — and what makes a geometry valid.
50 guides → -
CRS & projections
Coordinate systems, EPSG codes, reprojection, and the silent errors they cause.
31 guides → -
Joins & relationships
Spatial joins, attribute joins, nearest neighbour and point-in-polygon.
33 guides → -
Networks & routing
Street networks as graphs: shortest paths, travel time, isochrones and snapping.
13 guides →
Imagery & point clouds
Data that arrives as measurements of a surface rather than as features on it.
Analysis
Getting from a raw download to something you can put in front of someone.
-
Data cleaning
Turning a messy download into an analysis-ready dataset you can trust.
45 guides → -
Raster & rasterio
Reading, sampling and converting raster data in Python.
45 guides → -
Maps & visualisation
Static plots, choropleths, interactive maps, and exporting images people can use.
33 guides → -
Spatial statistics
Density, clustering, hotspots and autocorrelation — measuring pattern rather than drawing it.
17 guides → -
Terrain & elevation
Working with DEMs: slope, aspect, hillshade, contours, profiles and drainage.
18 guides → -
Movement & time
GPS tracks and trajectories: cleaning them, segmenting them, and measuring what moved where.
14 guides → -
Web maps & tiles
Getting a dataset into a browser: tile pyramids, vector tiles, PMTiles and MapLibre styling.
15 guides →
Modelling & prediction
Predicting a value where nobody measured one — and knowing where that prediction stops meaning anything.
Production
Work that runs without you watching it.
-
Batch processing
Running one operation across a whole folder without babysitting it.
36 guides → -
Pipelines & automation
Config-driven, scheduled, observable workflows that run without you.
40 guides → -
Performance & scale
Spatial indexes, parallelism, memory, and datasets too big to load at once.
34 guides → -
Cloud-native formats
COG, Zarr, GeoParquet and STAC: reading the part you need over the network instead of downloading the file.
15 guides → -
Testing, CI & Docker
Proving a GIS workflow still works, and shipping it somewhere reproducible.
15 guides →
Tools
The other software in a Python GIS stack, driven from Python.