Tools for Generating Public Transport Isochrone Maps

 947 words  |   4-min read  |    Isochrone Map, Routing, Accessibility, Public Transport


2020-12-public-transit-isochrone/traveltime-test.png

Updates on Apr 2022: Technology advances everyday. Many tools have upgraded since I wrote this post in 2020. In particular, TravelTime now includes public transit in Hong Kong. I plan to write some follow-ups when I have time.

Therefore, remember take a grain of salt of what I originally wrote below, as they are already not the *latest* information!


I have a new project which needs to generate some isochrone maps. To be honest, isochrone maps sounds like a jargon for me - I find the term Travel Time Map more explicit and easy to understand. Originally, I call this type of map “Service Area map” since I usually make these maps in ArcMap/ArcGIS Pro with the network analyst extension. And that’s how ESRI calls this type of map.

from https://pro.arcgis.com/en/pro-app/help/analysis/networks/service-area-analysis-layer.htm

Isochrone with Accurate public transit data

The task, of course, is not that simple. My task is to create isochrone maps with the following requirements:

  1. The travel time is counted using public transit, not private cars/trucks/walking
  2. The focus area is in Hong Kong
  3. GUI Available (if possible)

In case you don’t know, 90% of the journeys in Hong Kong are made using public transit. Public transit in Hong Kong is so convenient and well-maintained that even commuters with driving licenses would still prefer taking subways (MTR). This is always a model for foreign cities aiming to reduce private car usage and promoting green public transport.

But this implies isochrone for cars are not useful when conducting accessibility assessments in Hong Kong - after all, who would take cars? Public transit and walking are the main mode of commuting. This means I have to search for accurate datasets of public transport in Hong Kong to generate those accessible area maps.

I believe Google Maps has the most comprehensive public transport database for routing analysis and commuting data collection in the context of Hong Kong - even more comprehensive than the one owned by the Governmental Departments. However, Google Map Services API does not provide isochrone generations. Google Map API are powerful in terms of geocoding and routing. What a pity that isochrone feature is not available.

I also searched for non-GUI tools like Valhalla. It could act as a backend for generating these isochrone maps. Still, I do not have much knowledge of C++ and I believe it’s not a good idea to trying understand the code of this project. I am more capable of messing up a few JavaScript snippets, not a huge C++ project.

The attempts

Therefore, I switched back to finding some GUI tools to generate isochrones. This article summarises the tools I have searched for and records my findings.

Tool/SitePublic transport data availableGlobal Coverage? (Hong Kong data available)GUI Available
Open route Servicesnoyesyes
Mapnificentyesnoyes
TravelTimeyesnoyes
Mapzennoyesyes
Mapboxnoyesno

Attempt 1: Open route Services

https://maps.openrouteservice.org/

When you see some geo-related applications with a word “open”, you know it is related to OpenStreetMap. It is unsurprising to see how this service works:

Openrouteservice is being developed and provided by Heidelberg Institute for Geoinformation Technology (HeiGIT) and offers Routing services by using user-generated, collaboratively collected free geographic data from OpenStreetMap. Please donate your geographic data to openstreetmap.org!

Yet, they only have the following travel options available: car, trucks, bicycle, walking and wheelchair(!). It is already astonishing to provide walking isochrone for a completely free service. However, this is not enough for my task.

Conclusion: Not Useful

Attempt 2: Mapnificent

https://www.mapnificent.net/

Public transit data available! They have already stressed this in the catchphrase.

Shows you areas you can reach with public transport in a given time.

However, no data available in Hong Kong.

Conclusion: Not Useful

Attempt 3: Traveltime

https://app.traveltime.com/

They have public transport option available. There’s even an option called “Driving and Train”, which may be a common commute option for English citizens.

In addition, I love the UI of this tool. Their colour choice for the buttons and basemap looks pleasant to me. I find colours near navy blue comfortable and “warm”.

But the service is limited to Europe.

Conclusion: Not Useful

Attempt 4: Mapzen

https://www.mapzen.com/products/mobility/isochrone/

This web map looks great for me. Without doubt it uses Valhalla for the backend of the routing services. You are free to click on any point around the globe and check the isochrone of driving, walking and cycling.

However, no public transit data available. And the cut-off travel time seems to be fixed on 15, 30, 45 and 60 mins.

Conclusion: Not Useful

Attempt 5: Mapbox

https://docs.mapbox.com/api/navigation/#isochrone

I love Mapbox in terms of their cartography products. And it’s great that they also provide isochrone mapping services. They even have a demo for it.

However, only walking, driving and cycling options are available. Not useful when I want to deal with public transit.

Conclusion: Not Useful


Results

I believe there are no GUI tools suit my need. I dare.


My planning attempts

But I still have to work on the project. Following are some tools I found yet haven’t tried. I will update my usage report when I decided to try them.

Third-party Google Map Isochrone generation JavaScript

Eiffel Tower isochrone

https://github.com/dugwood/isochrone-isodistance-with-google-maps

It is not a truly isochrone. Isochrone mapping is not supported by Google Map, regardless of being end users or map developers. The polygons are just computed using the distance-matrix approach to generate vertex of the travel-time polygon, with some smoothing algorithm applied.

Pros

  • Google map API services is used compute public transit travel time

Cons

  • Time needed to write and debug the codes
  • Not sure if the script fits with the latest version of the Google Map API

GTFS Data with R

https://xang1234.github.io/isochrone/

The Latest