In this map, the height of each road segment is in proportion to the number of bus routes going along it.

To do this, used python code (with Shapely and Fiona) to deduplicate line segments from OpenStreetMap bus route relations. By snapping nodes to 5 decimal places precision, and rotating roads so they all follow a consistent direction, it became possible to count how many routes each road segment belonged to.

Used QGIS to buffer these using variable buffer width so that more-travelled routes become thicker. Exported to OBJ file format using some python code and rendered in Blender.

Uses data copyright OpenStreetMap contributors.

Interesting patterns in Bus Routes

The importance of Princes Street is clear; the majority of bus routes converge there and fan out east or west.

There are surprisingly few routes which skirt the city centre.

The west end of Princes street has more buses going along it than the East end. This is surprising.