Sunday, 18 September 2016

Iron Viz III - Device Specific Dashboards

If you scroll back through my blog you will notice one missing item. Iron Viz Qualifier II. It was all about politics during a pretty dramatic time. The Presidential candidates were getting chosen in the US and the UK was in the midst of voting themselves out of the EU. Visualising data on politics was the last thing I wanted to do.

So why this enter this time? Quite simply, why do I enter any of the Iron Viz competitions?
Well it isn’t to get up on stage and viz my little heart out. It’s to actually investigate subjects and techniques I am interested in. But this time was different. I actually could develop an app that was useful for me and improve my chance of getting better at something I do a lot; namely Cycling.
I have been sitting on a data set of all my rides for the last two years but I didn’t just want to visualise them for a vanity project of “oh look how much I ride”. I wanted to save the data set for a time that it would actually teach me something and aid my improvement. Tableau’s release of device-specific dashboarding gave me exactly that opportunity.

The data set shows that I already capture the data from each ride manually, but now I can just add it to a google sheet and get instant feedback on whether I am riding as much this year than last, whether I visited some cool places and I shouldn’t forget, or whether I ride more if the weather is better etc.
Keeping a running total of the distance I do, whether it is inside on the turbo trainer or Spin Class or on training rides or tours, can give me an idea of whether I am improving and riding more distance with more confidence. The mobile dashboard can be easily checked to see this.

But what about my friends who don’t keep up with every ride? Well they can check out the normal dashboard that will give them a view on the foreign adventures and how I am getting on with my overall distance for the year (a little peer pressure goes along when it’s raining outside and the last thing you want to do is hit the roads).



Tableau techniques
I don’t often build individual callout numbers but in this dashboard they certainly had their places. I didn’t want to create multiple graphs with similar trend lines for different metrics. Time on the saddle and overall distance would always follow the same pattern so calling these overview numbers out was an easy design choice to make. To do this, just drop the value you want to show in to the middle of the visualisation (or on to the text part of the marks card). You can then edit the text (click on the text part of the marks card) to put the value in to a description to help position the number.

Running Total - In The Information Lab we obviously use Tableau to visualise our sales numbers and seeing them evolve overtime is useful. Comparing similar time periods against each other is a great way to show your progress so I decided to take a monthly look at the distance I rode and how it adds up. Giving myself lots of monthly targets rather than always trying to make a new personal best can be a lot more motivational and helps to break big targets down. The way Tableau handles dates is perfect for this so splitting out the months in to individual running totals is really easy as you can use separate date parts (day on ‘Columns’, months on ‘Detail’).


Shapes as filter – Rather than using a quick filter, Tableau actually performs better using a sheet with a dashboard action filter affecting the other sheets. This means that users need to be guided to interact with the worksheet that you want to act as the filter. A fun way to do this is to use custom shapes to make these filter sheets more interesting. You can load images and your own shapes in to Tableau by adding them to the ‘Shapes’ folder in your ‘My Tableau Repository’ (you’ll probably find it in your ‘My Documents’ folder if you are a Windows user). Rather than just having four icons for the seasons – I thought four different images of me cycling during the different seasons would illustrate this differently.