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 22 — use the page links below, or browse by topic above.
- 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 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 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 Work with a Custom or Local CRS in Python
- How to work with fire perimeter data in Python
- How to Write a Cloud-Optimised GeoTIFF in Python
- How to Write a Custom QGIS Processing Script Algorithm in Python
- How to Write a GeoDataFrame to PostGIS
- How to write a metadata record for a dataset in Python
- How to write a variable-rate prescription map
- How to Write Partitioned GeoParquet and Query It with Filters
- The Python GIS Data Cleaning Checklist: From Raw Download to Analysis-Ready
- Your First Python GIS Analysis: From Download to Map in One Script