Most of the visualization design work we do in the giCentre is for specialists and academics wishing to make more sense of their data. In many cases these experts are experienced in analytics and have a professional incentive to explore and understand their datasets. But sometimes there comes an opportunity to provide insightful data visualization for a more general audience.
When I'm not working, I'm often out on my bicycle. On long rides on by bicycle. Sometimes very long. Audax UK is an organisation that supports and organises long distance cycling events in the UK and their flagship event, held once every four years, is the London-Edignburgh-London. It's a 1400km ride between the two capital cities (that's there and back again) that has to be completed in five days or less, so is a challenging event by anyone's standards. For the first time this year progress of the 1000 riders between 'controls' - food stops spaced every 60km or so - was logged in a database and served live over the web for anyone to follow. Although I've ridden the event before, I wasn't able to this year, so I thought I'd try visualizing the results.
Like all audax events, the LEL as it is known, is not a race. Nevertheless many riders are keen to see how their own progress over the 1400km compares with others. Despite the large number of cyclists, over that distance riders can become very spread out, so they often don't know how they are faring compared with others. So the basis for my first chart design was a 'position chart' I created by hand to see my own progress in another long distance cycling event, the Paris-Brest-Paris:
For riders, this type of graphic can be insightful as it shows the impact of stopping for food and sleep (or lack of sleep) on relative position. All riders will have good spells and bad spells over this kind of distance and it can be interesting to see how this affects how the cyclist moves up and down the field. The challenge for the data visualization designer is how to generate such graphics for the 1000 riders allowing each to compare their own progress with all others. With the magic of Processing and a little bit of Javascript, this turned out to be quite straightforward. Simple use of colour and line thickness allowed the individual and group to be distinguished:
As well as allowing a particular rider (rider C49 in this example) to see their own progress, the collection of blue lines representing all other riders shows some interesting patterns. The upper part of the graphic shows much more stability than the lower part, especially in the second half of the ride as their relative position becomes entrenched. In other words, the fastest riders who start near the head of the field tend to remain so for the majority of the ride. In contrast further back in the field, there is much more vertical movement showing riders constantly overtaking and being overtaken by one another. The vertical banding of crossed lines show where some, but not all, riders chose to sleep for a few hours, thus temporarily falling down the order of participants. The narrowing of the entire block from left to right represents the riders who dropped out of the event at some point. Further insight can be gained by colouring these 'did not finish' or DNF riders in red:
While not a race, there is a maximum time limit for each of the controls along the route. Ride too slowly and you get eliminated from the event. This in part explains why most of the DNFs occur towards the bottom of the chart - i.e. riders at the back of the field. But there is also an interesting group of red lines at the top of the chart that drop out of the ride at the half-way point in Edinburgh. These were riders who were leading the field, presumably attempting a fast time for the event, but on realising they were perhaps not going quite as fast as they hoped, dropped out. This is also supported by the fact there was a considerable wind from the south making the northward journey somewhat easier than the return leg back to London.
For riders less interested in how they are doing relative to everyone else, but instead how much time in hand they had (i.e. how far ahead of the elimination cutoff time) over the course of the event, it was relatively straightforward to show this for all 1000 riders, again with DNFs in red:
Typically a cyclist on a long Audax event will ride at a faster pace to build up a 'bank' of time which they can use for eating and sleep stops without getting eliminated. This pattern is evident in this chart with a characteristic wave pattern to time in hand. The steeper the 'drops' in the waves, the longer rider remained stopped at controls. It is evident that the riders in the middle of the field are the ones that stop for the longest. The fast riders who build up the greatest time-in-hand do so by stopping only for short periods. Likewise, the slowest riders are forced to keep moving with short stops in order to avoid being eliminated.
A third type of chart was produced to help the organisers of this and similar events to see how riders spread themselves along the route over the duration of the event. One of the challenges for organisers is to predict when, and how many, riders will arrive at a food or sleep stop demanding a bed or hot meal. Using the arrival times of each rider at each control it is possible to produce a frequency histogram over space and time showing where riders are along the route. This involves some modelling of the amount of time stopped at controls since the times riders left each stop was not recorded directly. But the result is an animation that shows how the large bunches of riders at the start of the event become spread out over time, but then reform in smaller bunches after nighttime sleep stops and shorter food stops:
With feedback from participants Interactive versions of these graphics, allowing riders to compare their own results with those of the group were produced. A collection of static printed graphics, along with other summary statistics appeared in the November 2013 edition of the Audax UK magazine Arrivée: