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.

Real maps from real runs

Where the point is where something is, the guide draws a map from the open data it used.

John Snow's cholera map, rebuilt Soho, 1854: 489 deaths and the pumps nearest to them Crime hotspots with kernel density Chicago robberies, 2024: where the density concentrates A UK election hex map One hexagon per constituency, so London is not a dot Where drought settles US Drought Monitor, every county, every week since 2000 The US flight network Every 2025 route in the lower 48, drawn as great circles Britain's road traffic counts Annual average daily flow at every count point New York's street trees The 2015 census, coloured by the five commonest species Who lives near a bike-share dock Washington DC: distance from homes to the nearest station New York's taxi pickups A year of yellow-cab trips, per square kilometre of each zone America's bridges in poor condition Every highway bridge, with the poor ones picked out in red Every US power plant Plants of 1 MW or more, coloured by technology, sized by capacity What New Yorkers report to 311 Requests per resident in each neighbourhood, July 2025 A year of America's tornadoes Every 2025 tornado segment, begin to end, by EF rating The 2025 hurricane season Thirteen Atlantic storms, coloured by Saffir-Simpson category Where hail is reported Hail reports per 1,000 km² of every US county, 2025 Where Britain cycles Cycles a day at each counted point, with London enlarged Federal disasters by county Major disaster declarations in every county since 2000 Where flood insurance paid out NFIP claim payments per county, losses 2017 to 2026 Washington's electric cars Electric share of registered passenger vehicles by county EVs around Seattle Electric vehicles per km² of land in each census tract Mice in New York kitchens Share of restaurant inspections citing mice, by neighbourhood Home internet speed by county Median fixed-broadband download, April-June 2026 Where new homes are going up Housing units permitted per 1,000 residents a year, 2021-2025 Where the farm drones are Registered electric rotorcraft per 100,000 residents by state Toxic air releases per resident Pounds of listed chemicals released to air per person by county, 2024

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
  1. Run on open data. Each guide's code runs from a clean folder against real, public datasets — not toy examples.
  2. Checked against the output. Every number in the prose is traced to something a run printed.
  3. 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.