Hydrology & Watersheds
A DEM already knows where the water goes. Ask it carefully.
Every watershed, stream network and flood proxy derived from elevation starts from the same chain: condition the DEM, route flow from each cell, accumulate it, then cut the result at an outlet or a threshold. Each link has a choice that changes the answer — breaching or filling, D8 or a multiple-flow method, where the pour point sits, which DEM and at what resolution. These guides walk the chain end to end, check the results against published gauge areas, and fix the failures: tiny watersheds, parallel streams on flats, roads that act as dams, and catchment areas measured in degrees.
Start here
The cornerstone guide — the whole workflow end to end. Everything after it goes deeper into one part of it.
Step 1 DEM Hydrology Explained: From Elevation to Where Water Goes dem hydrology explained Begin the path →The full path, in order
20 guides: the concepts underneath the work, then each task, then the errors that task produces. Work down, or jump to the step you need.
- Flow Direction Explained: D8, D-Infinity and MFD Compared d8 flow direction explained 🧭 Concept
- How to Condition a DEM for Hydrology: Breaching or Filling breach depressions dem python ⚙️ How-To
- How to Calculate Flow Accumulation from a DEM in Python flow accumulation python ⚙️ How-To
- Pour Points Explained: Why Watershed Delineation Needs a Snapped Outlet pour point snapping explained 🧭 Concept
- How to Delineate a Watershed from a Pour Point in Python watershed delineation python ⚙️ How-To
- How to Extract a Stream Network from a DEM extract streams from dem python ⚙️ How-To
- Stream Order Explained: Strahler, Shreve and What They Measure strahler stream order explained 🧭 Concept
- How to Calculate Strahler Stream Order in Python strahler order python ⚙️ How-To
- How to Split a Catchment into Sub-basins at Many Outlets delineate subbasins python ⚙️ How-To
- How to Summarise Catchment Attributes: Area, Slope and Land Cover catchment characteristics python ⚙️ How-To
- How DEM Resolution and Source Change a Drainage Network dem resolution stream network 🧭 Concept
- Height Above Nearest Drainage Explained: A Quick Flood Proxy hand height above nearest drainage 🧭 Concept
- How to Calculate Height Above Nearest Drainage (HAND) in Python hand python dem ⚙️ How-To
- How to Burn a Known River Network into a DEM stream burning dem python ⚙️ How-To
- Fixing a Watershed That Comes Out as a Few Pixels watershed delineation wrong small 🔧 Fix
- Fixing Streams That Run in Straight Parallel Lines Across Flat Ground flow direction flat areas parallel streams 🔧 Fix
- Fixing Flow Accumulation That Is All Zeros, NoData or Stops at the Edge flow accumulation nodata 🔧 Fix
- Fixing Streams That Stop at Roads, Bridges and Embankments dem roads block flow bridges 🔧 Fix
- Fixing Catchment Areas That Are Wrong on a Latitude–Longitude DEM watershed area geographic crs wrong 🔧 Fix
Topics this path covers
A path is a route; a topic is everything the site has on a subject. Open a topic to see the guides this path skips.