Heat highlights, and I don't mean Miami
Heatmaps have long been recognised as an effective way of showing variation across two dimensions.
There are many fantastic examples of heatmaps done well across the Tableau Community and one such viz recently inspired my April #SportsVizSunday entry, our guest host, Jacob Olsufka’s, MLB Pitchers viz.
I loved the design Jacob used in his viz, creating some not so small multiples to look at pitcher trends, applying a colour in a very subtle way where the end result was a stunning, engaging modern design that will forever be one of my all-time favourite sports vizzes in Tableau (even though I know very little about baseball, it’s rounders with Hot Dogs and the occasional hitting of a trash can, right?).
We all know highlight actions are an out of the box Tableau functionality for heatmaps, highlighting data points that you click on, but what about if you want to give your users a more curated analytical experience? What if you want to highlight certain data points on a heatmap to tell your story more effectively? This is where dual axis marks come to your rescue.
In my latest #SportsVizSunday visualisation I wanted to demonstrate the link between google search popularity and positive golfing achievements, those of reaching World Number 1 and winning a major championship.
When thinking about my design I still wanted to keep to the core principles of a heatmap, to allow colour to be the medium in which I was articulating the story, but also to compliment the heatmap with elements of prescribed highlighting. Here is how I approached it:
1. Create your basic heatmap by placing your dimensions on Columns and Rows and your measure on colour.
2. Add two ‘dummy’ measures on Rows, for example sum(0), and right click to make these a dual axis. This in creates the illusion of two marks, overlaying on top of each other and giving you the freedom to modify one of the marks as a highlighter.
3. I chose to highlight based on the colour of an outer border, white for when the golfer was World Number 1 and orange when the golfer won a major championship. To do this I created a calculated field that allowed me to size the top mark smaller than the back mark.
If [Event you use as a border] = True then 1 else 0.5 end
4. Lastly place your measure on the ‘top’ mark and your highlight colour dimension or calculated field on the ‘back’ mark and fix the size range from 0 to 1.
You should be left with an effect that looks like something below, the illusion that your heatmap has multiple layers; layers which act as a way of highlighting certain data points, guiding your user through a curated analytical experience.
PS Thank you to Lindsay Betzendahl for the very gentle nudge on Twitter which prompted me to write this blog post, I hope you found it useful. You can check out my full viz below.