“Ann, should my bar charts be horizontal or vertical?”

**Ordinal variables get vertical bars**

Ordinal variables follow a natural progression—an order. I arrange ordinal categories from left to right so my viewers can view the sequence across the page, which means their bars are vertical. Use vertical bar charts to display ages, salaries, and even and cohorts (e.g., the percentage of students from each graduating class who achieved *x* outcome).

**Nominal variables get horizontal bars**

Nominal categories—favorite ice cream flavors, types of organizations where conference attendees are employed—can be arranged in any order. I arrange nominal variables in a list from top to bottom, which means their bars are horizontal.

You can sort nominal variables from greatest to least or from least to greatest. Both are correct. My advice: Sort the data so that the item that warrants attention is displayed first—a high number deserving a celebration, or a lower-than-hoped-for number that needs to be turned around.

These are guidelines, not rules. If you can explain the logic for going against this guidance, then your graph is probably going to be alright. My goal is to develop critical thinking masterminds, not robots.

Download the template.

*Related*

Kathleen Lynch

Jan 31, 2017 -

So logical. So helpful! Thanks, Ann.

MpPierce

Feb 6, 2017 -

Great, logical way to think about it. My only consideration, in the past, had been the length of the labels. If the labels were short, then I went vertical. If they were long, I went horizontal for readability. This approach is another, great consideration.

I also like your method of placing the descriptor (votes, people, students) on the first value and then dropping it on the remaining. Makes it much easier to read/understand the data in the chart.

One question: Do you have a reason for including the axis/scale on all of these charts, in addition to the data values presented with each bar/column? I definitely understand including a scale/axis when you have a known, maximum value (like 100% on the 3rd chart, percent of graduates). But, when dealing with hard counts (like votes or people), and the max isn’t necessarily 100, I tend to remove the axis/scale in favor of the data labels. What are your thoughts?

Ann K. Emery

Feb 7, 2017 -

Label length matters of course (you know the ones – the long labels on vertical bar charts where the text gets twisted diagonally, gross). Graphs exist to showcase our numbers so I want graphs to subtly remind viewers whether numbers are ordinal, categorical, etc. It’s a small detail that gets viewers a bit closer to the numbers.

Re: including the axis/scale: I used to teach workshop attendees that they could pick one or the other — label each of the bars directly with its exact percentage, or, label the axis so that viewers focus on big-picture patterns and don’t get lost on the individual values of each bar. I primarily work with technical/researcher types whose pre-workshop graphs are packed to the gills with details so I wanted them to focus viewers’ attention by selecting either the axis labels or the numeric labels but not both. But, nowadays, I encourage workshop attendees to label the starting point and ending point of each axis. There are still a handful of people in the world who intentionally screw with the axes to skew our judgment so I include the minimum and maximum values for transparency. I’m also *not* in the camp that says that every axis has to start at zero or 0% (you wouldn’t start a graph about adult weight or height at zero), so when you’re not beginning at zero, then labeling the minimum value is the transparent thing to do.

Ann K. Emery | Flipping Your Bar Charts

Feb 27, 2017 -

[…] I read your latest post, and I accidentally made a horizontal bar chart when it should’ve been a vertical bar chart! Am […]

Ann K. Emery | Visualizing Survey Results: Crowded Agree-Disagree Scales

May 23, 2017 -

[…] A is a stacked bar chart. I chose horizontal bars over vertical bars because I arrange ordinal variables from left to right across the page. I also chose to display […]