An animated map of Auckland’s public transport network

By Chris McDowall 20/01/2011 48

I grew up in Auckland and spent many years using the city’s public transport system to get from place to place. While sitting on a bus, I sometimes wondered what the transportation network would look like if we could see the movements of the individual vehicles from the air. I would try to visualise the aggregate trajectories as each vehicle carved a path through space-time. After a few moments I would get hopelessly overwhelmed and go back to reading my book.

Last year Auckland Transport published its Google Transit Feed data on the MAXX website and I realised it provided the information I needed to make the map I used to daydream about. The data is a series of (large) spreadsheets, each describing a different aspect of the bus, train and ferry network. Last week I downloaded the spreadsheets and wrote some software to transform the data into an animated map.

As usual, I recommend you full screen the video and watch it in high definition.

[vimeo width=”680″ height=”383″][/vimeo]

The animation begins at 3am on a typical Monday morning. A pair of blue squiggles depict the Airport buses shuttling late night travellers between the Downtown Ferry Terminal and Auckland International. From 5am, a skeleton service of local buses begins making trips from the outer suburbs to the inner city and the first ferry departs for Waiheke Island. Over the next few hours the volume and frequency of vehicles steadily increases until we reach peak morning rush hour. By 8am the city’s major transportation corridors are clearly delineated by a stream of buses filled with commuters. After 9am the volume of vehicles drops a little and stays steady until the schools get out and the evening commute begins. The animation ends at midnight with just a few night buses moving passengers away from the central city.

Some things to note:

  • The steady pulse of the Devonport Ferry.
  • The speed at which buses hurtle down the Northern Motorway’s new bus lanes.
  • The interplay between buses and ferries on Waiheke Island.
  • The sheer mind-boggling complexity of the system.

Please note that there are a few quirks in the animation. A couple of ferry services pass across the land and there is at least one erroneous harbour crossing. These errors are not problems with the MAXX schedule – they are errors introduced by missing geometries. I will attempt to rectify these issues at a later date.

48 Responses to “An animated map of Auckland’s public transport network”

  • Wow, this is really impressive. Great work. I’m amazed at how many public transport routes there are. Interesting to see the progression through the day.

    • @Carl. Thanks for your comment. Funny you should mention that. I have actually written the code to do the colour shading and tested it on a sample run. In the end I decided to just get it up as is because otherwise I will spend days mucking about tweaking things. I would like to do another version though. If I do, I will add colour coding.

  • Nice work Chris!!! – I did a similar thing for a Uni project using GIS that depicted what happens to traffic flows when there is an accident! – Time based annimaiton was always an issue so well done!!

  • This animation could easily be turned into a user-friendly interface that could go on the Auckland Transport website, in the form of a map with lines that get thinner and thicker as the time of day changes. Two lines per road are needed, e.g. a red one one way and a blue one the other, as the frequencies will often be different in the peaks. Such a display would help the travelling public to distinguish between “turn up and go” services and “long wait” services, which generally have different target demographics, i.e. the impatient and the patient. Currently, would-be bus users tend to assume the worst and this means that a lot of people don’t use buses, when in fact they could.

  • @Wes. I will write up the process over the weekend. The short story is: Python, Matplotlib + Basemap, FFmpeg.

  • Hi Chris, I love this animation. Just wanted to agree with @carl that a couple of colours to differentiate between buses, trains, and boats would make it even better. (But I understand the time constraints:)

  • Clever work mate. If you get really keen you could underlay population density, employment zones, level of income etc etc etc and use it as a tool to highlight gaps in the network and influence transport policy and spending. Well done.

  • Genius work. I particularly like the interaction between the Waiheke ferry and Waiheke bus services.

  • Great work on the animation! Visualising this information along with suggestions like those from @craig is a great step to understanding how to improve public transport in Auckland.
    It’d be great to see where people go to and from by car as well in order to see where new routes could be added.

  • Congratulations on a great animation. I used the spreadsheets in an analysis recently myself. I know how hard it is to make a map of them with no direct linkage to the road network. I am impressed with the decision to get out a draft, it’s so hard to know when to stop tweaking.

  • @Kimo Thanks, Kim. That means a great deal to me coming from you!

    I’m getting more relaxed about releasing drafts. I am taking the attitude that “flawed but out there is better than perfect but attainable”.

  • Chris, What a truly wonderous thing.
    As a student in the late 1950s the Halcrow Thomas report had been recently published and we sepnt some time on it. Had it been implemented (underground railway to Mt Eden station) I wonder what the shape of Auckland would be now. Also, presumably you or someone will do something similar for other major centres in NZ.
    Congratulations and best wishes.

  • What about music or some sound to add an audio dimension?

    I think sound would bring this to life.

    Heard you gone national radio – I agreed numbers on a page are totally boring.

    Great idea

  • Smart visualization, very well done. Love them little tadpoles 🙂
    Also, kudos for pushing it out the door before “perfecting” it. That takes courage.

  • Hi, this is really interesting. I teach on maps and spatial representation at the Uni, (you can see my course blog on Be great to get in touch and have you come and talk about your work with the students. Also, I am organising an exhibition of historical and contemporary maps of Auckland would love to include this. Could we get in touch?
    Kathy Waghorn
    School of Architecture and Planning
    University of Auckland

  • Great work Chris.

    I have just posted the link to my facebook fan page – I love the animation.

    Justin’s comment is right on the money; “the council should use that as a part of their campaign to encourage more people to use public transport.”

    Keep it up!

    Rob Thomas
    Waitemata Local Board Member, Auckland Council

  • Great job on spatial-temporal data visualization, Chris!

    Have you tried to add some labels (places names) on the map? I animated tourists itinerary trajectories a while ago in ArcGIS, I came cross the issue of flashing labels. Wondering if your have codes to control it? thanks!

    • @Chayn Thanks! Subtle place name labels would help people orient themselves. I might have a go at a later date. I don’t actually use ArcGIS very often these days. This particular map was created with Python and a few Python libraries. I meant to write up the methodology over the weekend. Didn’t quite find the time. Maybe this week…

  • Can you add trains to this – made different colour – this is a truly great piece of work

  • @John I have the data. Now I just need some spare time! Soon …

    @Kate Thanks! That’s really awesome. I love it!

  • Fantastic, Chris, my 12 Geography class will love this animated map. I would like to see it superimposed over a map of main transport routes so the main roads etc really stand out. Also as someone else said different colours for the different modes of transport. However what you’ve done is superb.

  • Jarrett Walker only now is featuring you so that’s why I’m late to the party.

    Very fun. I would have to learn all of these “The short story is: Python, Matplotlib + Basemap, FFmpeg” but having something to do is always an incentive to learn. I am familiar with the data for Chicago, with millions of records, because I got inspired by Jarrett’s frequent map efforts. I used Microsoft Access and Inkscape primarily. I assume that FFmpeg is animation software.

    Hope you find the time and interest for a longer more technical exposition of your methodology, especially as regards the tables you used.


  • Great stuff Chris. Maybe if you do come to the Uni to give a presentation we can get a two-fer with a guest slot in geography too!

  • Clever work mate. If you get really keen you could underlay population density, employment zones, level of income etc etc etc and use it as a tool to highlight gaps in the network and influence transport policy and spending. Well done.
    Toronto Movers

  • This is fantastic. I would like to see it superimposed over a map of main transport routes so the main roads etc really stand out. They said different colours but what you have done here is very very good. Thanks.