Flow maps & origin–destination data

Movement between places: migration, commuting and trip flows, origin–destination matrices, desire lines, curved and bundled flow maps, and the uncertainty in small flows.

Curved red flow lines of different widths fanning out from one teal origin to five destinations. width is the data, length is not40 of the 1,023 flows out of Los Angeles County carry 71% of everyone who moved

A flow map draws movement between places: people moving house, commuting to work, riding a bike from one dock to another. The data behind it is an origin–destination table, and most of the work happens before any line is drawn. That means choosing which flows matter, dropping the zero-length ones that stay put, and knowing which small flows are noise.

The guides here use the Census Bureau’s county-to-county migration flows with their margins of error, LEHD LODES commuting for every block pair in Rhode Island, and bike-share trip records. They measure each choice: 40 of the 1,023 flows out of Los Angeles carry 71% of movers, and two thirds of US counties have a net migration that cannot be told apart from zero.

🧭 Start with the concepts

The ideas the how-to guides below assume you already have.

⚙️ Then do the task

Step-by-step walkthroughs with code you can copy and adapt.

Show every how-to guide in this topic

🔧 When it breaks

The errors this topic produces, with the cause explained rather than just the command.

Related topics

Subjects that keep coming up alongside this one, most overlap first.

Keep browsing

Flow maps & origin–destination data sits in Analysis. Every topic on the site is listed on the topics index.