In languages based on the Latin alphabet, we read horizontally, from left to right. Reading on a diagonal produces cramped necks. Reading vertical text is just not going to happen. So, as much as possible, the text in our graphs should be horizontal.
Let’s walk through a demo. I was trying to combat my sense of hopelessness about the world by exploring the latest dataviz related to the Sustainable Development Goals (don’t we all?). The vast majority of their viz is pretty awesome, especially given how complicated the data can be. I saw this graph about how few developing countries have representation on international development councils.
And while I get that we typically show change over time as a line graph, I’m not sure that’s the best chart type for this data. First of all, the data are flat, so there’s no story in a trend. Arguably, there could be a story in a flat line but the subtitle here explains that things won’t shift much in this dataset. I don’t think there’s a need for a line. Second of all, many data points are clustered at the bottom of this graph, making it super hard to see what’s going on. (Some of those folks are my clients and I care about their data!) If we show just the most current year of data, we will be able to separate that cluster and see each international organization.
I often have to prescribe this mantra to the organizations I consult with: Better as a bar. This graph is one of those cases. But the default bar chart does the data no justice.
Sure, the graph type may be appropriate now but the text is all over the place. What’s the point of a vertical, hard-to-read y-axis label if it is pointing out something totally obvious by the chart’s own title? Redundant and hard-to-read! Let’s ditch it.
The text along the x-axis is perhaps worse. The labels are so long that the text is slanting diagonally and some of the labels are cut off, literally making them unreadable. We can try to decrease the font size so that the text shifts back to horizontal.
I had to go all the way down to font size 4 in order to get horizontal labels for every column in this chart. Most readers will quit even trying to engage with the graph if the text is this small. As we point out in the Data Visualization Checklist, the smallest font size you can reasonably get away with in newspaper-distance reading is size 9. Plus, some of the labels are still so long they are wrapping down onto multiple lines. If this is happening to you or your text is diagonal, consider it a big hint that your graph type needs to swap from a column to a bar.
The category labels will automatically become horizontal at a text size that people can see. It’s an improvement but I’m still missing part of one label (you can tell by the three trailing dots). This is why I love incorporating condensed fonts into my graphs. Condensed fonts are tall and skinny, helping us fit more words into the same amount of space. In my final graph below, I used Roboto Condensed.
I also had to make the graph just a little larger. This data includes a lot of categories with wordy category labels, so the whole graph needs to increase in size to accommodate. Rather than the default 3″ x 5″ graph size in Excel, the new graph is 4.2″ x 6.1″.
The numerical axis was overkilling it with all those decimals so I deleted it. I also wanted to add the precise values because almost half of my categories had values between zero and the first gridline.
I thickened the bars, changed the default color, deleted the chart border, and added a clearer title.
Finally, a readable graph! Focus on keeping the text horizontal and several other checkpoints from the Data Visualization Checklist will fall into place like magic. Test your own graph against the entire Data Visualization Checklist on our new, interactive website.