How-To Guides
Concrete, step-by-step solutions for Python GIS tasks — from loading a shapefile to shipping a scheduled, tested, containerised pipeline.
Every how-to guide, A–Z
Page 25 — use the page links below, or browse by topic above.
- How to Test a GIS Pipeline with pytest
- How to Test a GIS Script That Reads and Writes Files
- How to Test a Map App Without a Browser
- How to Test a Spatial API with pytest and httpx
- How to Test for Near-Repeat Burglary in Python
- How to Test Whether a Migration Flow Is Really One-Way in Python
- How to test whether a window can see a landmark
- How to test whether GPS traces reveal where people live
- How to thin occurrence records spatially
- How to Track a Wildfire with GOES Satellite Fire Detections in Python
- How to Track New Generating Capacity: Planned Solar, Batteries and Gas
- How to transfer events between two route systems
- How to Turn a GIS Script into a Command-Line Tool with argparse
- How to Turn a STAC Search into an xarray Data Cube
- How to Turn H3 Cells into a GeoDataFrame of Polygons
- How to Turn Model Predictions Back into a Raster
- How to Turn Traffic Counts into Vehicle-Kilometres by Region
- How to Update a PostGIS Table from a GeoDataFrame Without Duplicates
- How to Use a Census Population Grid in Python
- How to Use DuckDB as the Engine in a GIS Pipeline
- How to Use Global Canopy Height Maps in Python
- How to Use H3 in DuckDB for Grid Aggregation at Scale
- How to Use H3 Neighbours for k-Ring Smoothing and Buffers
- How to Use NOAA HMS Satellite Fire Points in Python
- How to Use the Spatial Index Directly in GeoPandas (sindex)
- How to Validate a GeoDataFrame Against a Schema Before Analysis
- How to Validate Geocoding Results Before You Trust Them
- How to Validate Pipeline Inputs and Outputs Automatically in Python
- How to Weigh Bridge Condition by Traffic: Daily Crossings on Poor Bridges
- How to Work with a Custom or Local CRS in Python