5  Transport networks

My passion for geospatial data and then urban data science was kindled by a desire to understand my own daily life. As a citizen of Wellington, I wanted to understand how the city worked and the subjectivity of my living experiences. Were the buses really that bad? Was walking both a huge energy investment as well as one of the most beautiful experiences of living in this nature-rich city?

I regularly walk around my neighbourhood of Northland where even a 20 minute walk is a delightful multi-sensory assault. The wind dishevels my hair as I take in the visual panoramas of the city, sea and hills while being serenaded by the shrieks of kaka and the heavy whoosh of a kereru’s weighty wings.

I wasn’t always an enthusiastic or willing walker. It took me years to enjoy the “special” walking conditions of the hilly city I call home. In fact, it took a few years of boring walking in one of the flattest regions of the world, Cambridge (UK), for me to appreciate the rewarding experience of walking in Wellington.

The slow transition to becoming a walker in Wellington made me realise the challenge of converting this city to an active transport paradise is not an easy one. It was especially difficult to read reports promoting targets for trips made by walking or cycling when the natural topography of Wellington would restrict these activities to a small subset of Wellingtonians. Even more difficult to stomach was the lack of analyses that consider the challenge of topography for walking or cycling. This prompted to build my own analysis and my journey and learnings are what make me advocate this capability to all urban citizens who have their own questions.

5.1 Mobility fingerprint of a city

Our street are shared by several different modes - cars, walking, cycling, buses, trains, trams and new transport technologies like e-scooters. The mobility fingerprint of a city is the way street space is shared across the transport modes [1]. Cities like Portland and Copenhagen have streets that are pedestrian-only as well as streets that are split for pedestrians and cars (the typical configuration of road and footpath). Amsterdam, with its notable cycling culture has many streets / paths dedicated for cyclists only. By contrast, Phoenix has a majority of streets that are for cars alone!

The transport fingerprint of a city: the different ways in which transport modes share street space [1]. Figure can be reproduced by anyone using the open source code published alongside the paper.

5.2 Getting street network data

Openstreetmap (OSM) is the most convenient way to get multi-modal transport networks. Like buildings, LINZ also manages road data for New Zealand but simple filters based on the extensive tag system of OSM can be used to extract specific aspects of transport networks e.g. only residential roads, state highways, cycleways etc.

For larger scale, driving-related analyses of built roads, the LINZ data is the best option. For multi-modal OSM data, consider a bulk download of all OSM data with osmextract in R. There are similar tools available in Python as well.

# load packages to get data
library(dplyr)
library(sf)
library(osmdata)
library(osmplotr)
source("R/centroid_bbox.R")

akl_bbox <- get_centroid_bounding_box(
  c("lat" = -36.85494696219434, "lng" = 174.76040843528585),
  distance = 1000,
  dist.unit = "m") %>% 
  get_bbox()

akl_roads_osm <- opq(akl_bbox) %>%
  add_osm_feature("highway") %>% 
  osmdata_sf()

akl_roads_osm_lines <- akl_roads_osm$osm_lines
# load plotting library
library(tmap)
tmap_options(check.and.fix = TRUE)

# plot buildings on map
tmap_mode("plot")
tm_shape(akl_roads_osm_lines) + 
  tm_lines()

Figure 5.1: Map of buildings in Central Auckland from OpenStreetMap (OSSM).

5.3 Exploring with routing

Routing and navigation go together for most urbanites. We regularly route our proposed journeys with apps like Google Maps to understand transport options, travel distances and times. Once the route has been chosen the apps cleverly help us navigate our journeys, providing assistance in real time including re-routing when we deviate from the chosen route. This hybrid of the physical and digital is so entrenched that we barely give it a second thought. The underlying routing algorithms run by Google (and others) can be reproduced with FOSS and open data. Instead of using a single route for journey planning or navigation, we instead use it for analysis.

Catchments up to 600m for Central Park play area in Wellington. Analysis with Python and the osmnx package. Code can be found here.

The simplest routing-based analysis is calculating catchment areas around a central location. Catchments visually summarise areas on a map that are equidistant along the transport network to some point of interest e.g. a playground. Routes are calculated as shortest paths from every intersection in the surrounding street network to this point. Catchments can also be converted to the more well-used “isochrones”, which summarises by travel time, using an average speed (e.g. 5km/h average walking speed).

5.4 Urban flows

A flow metric can be derived from many routes by counting the number of unique routes on any given link of the network. Filtering these flows can be used to identify arterial streets and roads. In Wellington, it’s easy the see the two state highways (in yellow) converging in from the north. We can also see the main roads leading down from the hilly suburbs down to the arterial roads leading to the central city.

Arterial roads in Wellington summarising flows to a representative cental point of the city: the Wellington central station. Analysis was done with Python and the osmnx and pandana packages. Code here.

5.5 Walking in hilly Wellington

We all have our passions as urbanists. For me, it’s how walking and cycling can become a bigger part of our daily lives. The change is already in motion but cycling and walking trips still dwarf in comparison to driving. Like with any urban problem, understanding the present (and often the past) is key to shaping the future. If we want to convert more trips from driving to walking (to reduce emissions) or just encourage more walking (for health reasons), we need to explore the current state - especially the barriers.

Anyone familiar with Wellington knows that the city is very hilly! This poses considerable challenges for walking - even to a local amenity like a council playground. Accounting for travel times on hilly terrain shows that there is considerable variation for residents. Even a well-established suburb like Karori with multiple playgrounds has a high average due to considerably lower access for people who live on the hillier outskirts.

Local walkability in Wellington suburbs. Individual values for suburban walkability for every street intersection are shown in the visualisation for Karori. The forest plot on the right summarises the average for every suburb and the grey area summarises the average across all suburbs. Code for this analysis can be found here.

5.6 Urban accessibility

Newer developments or lower price in housing starved cities are built around the fringes and thus find themselves too far from amenities making driving the only plausible option. Changing to public transit from driving has its own challenges. Access is high along routes but without an extensive network, public transit cannot beat the homogeneous access for cars.

How can we provision better access within neighbourhoods via non-driving modes to reduce our impact on the planet as well as improve our health and safety? These questions are core to our lives and wellbeing. We just need more people analysing and thinking of better options for the future.

Travel times to a tertiary hospitql in São Paulo by car vs. public transit. Image reproduced from Introduction to urban accessibility [2]. Figure made with the accessibility package.

5.7 Learning tips

Street network analysis, empowered by routing-based methods, is a powerful tool in any urbanist’s arsenal as it connects so closely to our real-world lives. However, there is a learning curve to understanding the methods and then applying them. My recommendation is to spend time with catchment and isochrone analyses connecting data visualisations to real world experience.

5.8 Resources