Functionality or Beauty in #dataviz? Books to help you choose.

Can you have functionality and beauty in dataviz?
Can you have functionality and beauty in dataviz?

One of the great challenges in data visualisation is balancing functionality and beauty.

On the one hand, you want to make your data viz as understandable as possible. On the other hand, it has to be engaging enough for people to want to use it.

Different dashboards and visualisations need to be at different places on the functionality/beauty spectrum. For example, if you use a dashboard every day for monitoring processes in your business, you need something highly functional which allows you to see outliers as quickly as possible.

I get asked a lot about this balance. My answer is a recommendation to read 3 books.


At the functionality end of the spectrum, you have the books of Stephen Few. I highly recommend Information Dashboard Design. His books give you the foundational knowledge you need. If you are designing dashboards for operational monitoring, you cannot go wrong with this approach.


At this end of the spectrum, I’d put David McCandless. Get Information is Beautiful or Knowledge is Beautiful (I prefer the latter). He makes very popular, very beautiful data visualisations. Almost all are impractical for business situations. If you are trying to communicate anything accurately, I don’t recommend adopting his approach at all. I do not however dismiss what he does.

A sweet spot?

Is there a sweet spot which balances both functionality and beauty? The book which gets closest to acknowledging the tension between function/beauty and helping your deal with it is The Functional Art by Alberto Cairo.

But I can only afford one book…

If you’re starting out in data visualisation, definitely read something by Stephen Few. This is vital to understanding the foundations of data visualisation. Once you’re familiar with those, you can start to add more aesthetic aspects of your visualisations.

Your second book should be Alberto Cairo’s. Finally, get the McCandless book for some inspiration.

Whatever visualisations you build, test them on other people for effectiveness.

Let me know what you think.  If you’re going to the Tableau Conference in Las Vegas in a couple of weeks, I’ll be talking about this in my “Visual Design Tricks” sessions.

Breaking the Real Chart Rules To Follow

Stephanie’s original chart.

I inadvertently sparked a debate on Stephanie Evergreen’s blog, “How to show down is good” (go read it – it’s great). In the post, she showed a bar chart whose axis didn’t start at zero (above). The horror!

Not only is this a flagrant breaking of all The Laws Of Dataviz, it came the very week Nathan Yau published an excellent post “Real Chart Rules to Follow”. How dare she!

I commented on Stephanie’s blog that her bar chart was a valid example showing that you could break one of Nathan’s rules, because there’s no such thing as zero weight for an adult human.

Stephen Few made a great point that for Stephanie’s chart, a dot plot would probably be a better option. I agree. Jeffrey made a great point that half the bar length suggests that the person is half as heavy. Fair enough: I agree with that too.

I also agree with my original comment. I’ll defend my comment, but not to the death. Maybe to first scratch but not beyond.

Let’s move on. And anyway, I’ve also written before about zeroes on axes (skilfully avoiding the bar chart pitfall, you’ll notice). And I fundamentally believe there is always an exception to every dataviz rule. We should educate people about guidelines and learning when they can be broken.

Finally, let me pose a question, to which I am genuinely intrigued to know the answer. Is the chart below valid? All I did was change the title and y-axis of Stephanie’s original chart. Now I am showing zero. Is this ok? 0lbs to target is still 150lbs in real weight.

Is this valid? It uses zero, but that zero still represents 150lbs?
Is this valid? It uses zero, but that zero still represents 150lbs?

Which chart should you use to show this data?


What's the best way to show this data?
What’s the best way to show this data?

I’ve blogged before about there being no “correct” way to visualize a dataset. The video below shows how this is the case. Even when data is extremely simple, there are many ways to view it, each being better at answering a different question.

Conclusion? The trick isn’t to think “a line is the best way to show time data.” It’s to consider the question you want to answer. Manipulate and play with the data until the answer is clear.

Visualizing the UK Elections: lessons for the future

I was honored to be invited to speak at Visualized:Political Data in Washington DC this week. It was a great event with some amazing speakers. I presented a summary of my UK Election Project ( Here are the slides – hopefully of some use even though they don’t have the script!


How to drive the message home with the right dashboard

Today (Thu 16 April) I did a Webinar for Tableau, “How to drive the message home with the right dashboard.” (the webinar recording will be available on that page very soon).

The slides are available here.

And here are the links to the resources I shared:

Design books and projects

Ranking UK political parties according to mentions on twitter by the media
Ranking UK political parties according to mentions on twitter by the media

Tableau Dashboards

How come we see bigfoot fewer times, despite us all now having smartphones?
How come we see bigfoot fewer times, despite us all now having smartphones?

Inspiration and further use cases

Viz of the Day: great messages, every day
Viz of the Day: great messages, every day

Killing the paired bar chart

In which years did B outsell A?
In which years did B outsell A?

Jon Schwabish just posted a nice solution to the problem of the side-by-side bar chart. I won’t go into why they’re A Bad Thing – he does that just fine.

I wanted to put this post together because it’s something I’ve been thinking about too. My solution is slightly different. Consider the side-by-side bar chart at the top showing sales of Product A and B over ten years. Too much ink! It’s confusing and impossible to interpret. It’s really hard to see anything.

How else can we show this info and ask “in which years did B outsell A?” Simple. Do something heretical and connect the dots using a line (what? Use a line to connect discrete values? But you can’t do that!):

side by side slope

Because we’re so well evolved to see slopes, we quickly and easily see the three years in which B outsold A:

side by side highlight
Click here to download a workbook with this chart in it

In this example, because it’s sales over time, I kept the years as separate panes.

With slightly different data, you can acheive the same results using a categorical slope chart. I’m doing this as part of my analytics based around the UK General Election (

SNP and LIb Dem Mentions

A new role: evangelist

The Ancient Mariner
The Ancient Mariner
I pass, like night, from land to land;
I have strange power of speech;
That moment that his face I see,
I know the man that must hear me:
To him my tale I teach.
– The Rime of the Ancient Mariner, Samuel Taylor Coleridge

Today’s my birthday and Tableau gave me a nice present: a new role. I’m now Technical Evangelist for the company. I’m humbled, thrilled and delighted with this.

In many ways it’s what I’ve been doing, unofficially, since first buying Tableau 7 years ago, starting this blog in 2010 (here’s my first post) and then joining Tableau in 2011.

I’ve kinda always felt a little like the Ancient Mariner. He went through a crazy experience and then felt driven to share it with everyone he sees. That’s how I feel about visual analysis and Tableau.

(another reason for the quote? The Rime of the Ancient Mariner is my favourite poem. I even tried to learn it while riding a bike around New Zealand ten years ago. If you’ve not read it, I recommend you do. Then go read the hilarious version by Hunt Emerson. Finally, go listen to Iron Maiden’s epic tribute to the poem; go on, you know you want to!)


How many data points are too many? In praise of the small multiple.

My latest Huffington Post article (published Wed 28 Jan) discusses how amazing our visual system is at seeing very granular levels of detail. Here’s a rather shaky GIF of the different views going from 1 data point to over 10,000:

howmanymarks narrow
Click image to see a bigger version

The inspiration for the column and this post was Ann K Emery’s 2015 data resolutions. I’ve always been a big fan of small multiples, but her specific statement to “do more small multiples” triggered my efforts to break the data out of the charts I’d been making with the Citibike data.

There have been lots of posts celebrating small multiples recently. My favourite is “A Big Article About Wee Things” by Propublica. Go read it! Go on.

What I really need to emphasise is that no single view is the “right” one. Theere’s no such thing as the “right” view. Being able to cycle through these very quickly in Tableau is immensely powerful – each view teases something else out of the data as you feel your way to insight. Each view shows something different and if you can see 30 views in 5 minutes, who knows what insights your data will reveal? What’s certain is that we can reflect on just how complex and yet clear 10,000+ marks appear:

All 10,246 marks in one place!
All 10,246 marks in one place!

3 ages of data viz?

I’ve got this idea for a future theme looking at “3 ages of data viz”. I want your thoughts. Is there something in this idea? Am I right? Are there more? What’s the NEXT age going to bring? What does this teach us about dataviz?

Age 1: The Excel disaster (pre 2000)

(image from

The early spreadsheet designers got excited about graphics and gave us 3-d exploded pie charts. If only they’d read some theory about effective dataviz maybe we’d not have had 35+ years of fighting back against dataviz disasters. To be fair to Excel, as you can see above, the defaults weren’t really that bad, given the limits of graphics cards in the day. Unfortunately, people got too excited about the 3d options.

Age 2: the Stephen Few fightback (2000-2010)


Stephen Few took on the spreadsheet behemoths in the first decade of this century. He made us all see sense and put science-backed best practice on the pedestal. People saw the light and visual tools began to ditch the dross in favour of charts that actually work.

Age 3: the creative years (2010-present)

What’s the top data dog (

The problem with Stephen Few’s approach is that people found his approach, well, boring. Unarguably his approach was functionally correct and just right for operational business dashboards. But many people were left unmoved. They found that following his approach didn’t engage people. As data journalism flourished and infographics exploded, there was a realization that a balance needed to be struck.

At the extreme end we found that people like David McCandless found success with their design-trumps-function approach  but others, such as Alberto Cairo (see his Tapestry Conference slides) and Andy Kirk (8 hats) pushed the need to ENGAGE as well as INFORM.

Tell me your thoughts

My ideas are fluid around this. I’m trying to make the point that we’re in a great place with the combining fields of creative power and effective design. What else do I need to know?