Python GIS, run on real data
Python GIS
Made Practical
Guides to working with spatial data in Python — from a first GeoDataFrame to production pipelines. Every example is run against open data, and the numbers on the page are the ones it printed.
Three kinds of guide
Each subject is covered from three sides: what it is, how to do it, and what goes wrong.
Concepts
What a CRS, a spatial index or a raster actually is, and why it behaves the way it does.
Read the conceptsHow-to guides
A task from start to finish: the quick answer, the full code, and the output it produced.
Find a taskFixes
An error message or a wrong answer, traced to its cause and fixed — with the cases where it comes back.
Fix an errorReal maps from real runs
Where the point is where something is, the guide draws a map from the open data it used.
What the guides cover
From the basics of reading a file to the work that runs unattended.
- Fundamentals What the objects, files and libraries actually are.
- Geometry & space The shapes themselves, where they sit on the earth, and how they relate.
- 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.
- Modelling & prediction Predicting values where nobody measured them, and deciding where things should go — with the limits of each model attached.
- Production Work that runs without you watching it.
- Delivery & sharing Handing the work to someone else: an API, an app, a link that keeps working.
- Governance & trust What a dataset is allowed to say, who it is allowed to say it about, and how anyone proves where it came from.
- Tools The other software in a Python GIS stack, driven from Python.
How the guides are made
Code that was never run teaches the wrong thing quietly. So none of it goes on the page without a run behind it.
Read the method- Run on open data. Each guide's code runs from a clean folder against real, public datasets — not toy examples.
- Checked against the output. Every number in the prose is traced to something a run printed.
- Re-run over time. Guides are re-run as libraries and sources change, and the date of the last check is on the page.
New to Python GIS?
Start with the basics: install, read a file, make a first map.