ABC of Power BI: “B” is for bar chart
Despite an amazing and growing range of ways to visualise your data, in many situations the humble bar chart remains one of the best options. In this article, Hugh Johnson gives 10 reasons why.
1. Bar charts need little explanation
Most people can understand a well-labelled bar chart. Take a look at the example below.
We can see straight away that the chart is showing Outstanding (balances) by Customer and that there is a handful of customers with a relatively high balance, and a very long tail of customers with much smaller balances.
2. A bar chart is great for presenting a ranking
We can see in an instant which customer has the highest balance and the order of our customers by balance.
3. Deeper, yet just as practical and meaningful as “Top N”
Many dashboards and reports include “Top N” charts, such as the “5 most profitable products”, “Top 10 customers by sales” and so on. These charts date back to printed reports, where you have a fixed amount of space. The thing is, you can configure the size and sort order of your bar chart to behave just like a “Top N” chart, yet still have all the detail for all your customers, products etc. by scrolling or going into “focus mode” in Power BI.
4. You can fit full customer names onto the chart
Handling long customer (or product, or any other category) names can be a real problem for many visualisations. The bar chart, however, handles these with ease. See how the chart comfortably displays the customer name “Advanced Care Rx Pharmacy”. See how the text is horizontal and not truncated so that you can read it.
5. You can include hundreds of records in a single bar chart
So, I hear you say, why would you want hundreds of records on a single chart? Well, don’t forget that firstly, you can size the chart so that you are looking at the top five customers, yet as the chart is filtered by other visuals on the page, this changes dynamically.
6. Colour can add extra depth to a simple story
The chart above, tells a very simple story: which customers owe you the most money. On its own, though, this has limited meaning. It is good that customers owe you money; it means that you are making sales. Does this make 105 Auto Stop a good or a bad customer? It depends. It is one thing for a customer to owe you money, yet another thing for a customer to owe you money for a long time. A nice feature of the standard Power BI bar chart, is that you can add colour, based on a second measure. In the example below, we are looking at the same customers, but this time I have coloured the chart based on the weighted average age of the debt for each customer. Green is the youngest, red the oldest, and yellow the average.
This small change, tells us so much more. In an instant, we can get a much better understanding of the debt profile of the company. We can see that the two largest debtors are relatively old and, apart from that, the top 10 debtors are young. The top 10 to 30 contains a significant number of ageing debtors and that there is probably a long tail of smaller, older, debtors need attention. Operationally, this implies a different approach may be needed for each of these three groups. This is the same chart, taking up the same valuable space on your canvas, but tells a much more complete story.
7. A stacked bar chart can show you the breakdown of a headline number
Where you have a headline number that you can break down into mutually exclusive categories (like total debt is made up of “Within Due” and “Overdue”), then you can use a stacked bar chart to show this.
A stacked bar chart works well (in my opinion) when you are trying to track just a couple of things like here. You could add more detail here, breaking the bar down into classic aged debt categories (<30, 30-60, 60-90, 90-120, 120+), but I think this is too much detail that would end up confusing, rather than telling, the story.
8. Tooltips can give more detail as needed
If you want more detail, then why not add a well-constructed tooltip? In the example below, I have created a Power BI tooltip page that shows, in context, when you hover over each bar. It is here were you can present more details like the aged debt breakdown of all invoices for the customer.
9. An alternative to the waterfall chart for variance analysis
A waterfall chart can be a great way to present a budget > variance > actual story. In my opinion, though, these stop working well when you have too many categories. Variance across 100 nominal codes in a single waterfall chart is very confusing.
In this situation, I like to use a bar chart. What I do is create an absolute measure (making all negative values positive) and then plot all categories together. By colour-coding the bar (red = negative and green = positive), you can quickly see the ranking of impact by category.
The chart below breaks down the variance of last month’s cashflow against forecast. In simple terms, it shows that despite being more or less on target for cashflow, there were significant variances under the hood. Delayed flows from customers were compensated by delayed flows to suppliers and are easily revealed in a chart like this.
10. An alternative to the slicer
In some circumstances, you can use the bar chart as an alternative to a slicer, since you can use a selection of a bar to filter other visuals on the page. This can work very well if you want to present your data categories (e.g. a customer list) in some kind on ranked order. It can also overcome the temptation to add bidirectional relationships for your slicers that can, in turn, cause other problems in your report.
You can use the humble bar chart in many different ways to present your story in a clear, yet not over-simplified, way. It is a great way to present a ranking of many (possibly hundreds) of categories, such as customer names. You can use colour and tooltips very effectively to add depth to your data stories. Consider also, using a bar chart with absolute values (colour coded) to present variance by category, particularly when you have lots of categories. Finally, it is a chart form that is widely understood and can take long category (e.g. customer) names.
A bar chart does not, however, solve all of your data visualisation challenges. In my opinion, its Achilles heel is that it gives no “Pareto context”. If we go back to our charts of outstanding balance by customer, it is clear that the customer “105 Auto Stop” owes the most money. It is not clear what proportion of total debt comes from this customer. For this, you will either need to use another chart and/or tooltips.
Bidirectional relationships and ambiguity in DAX
You might also be interested in
I am a founder director of Accounting Insights Ltd, a specialist provider of Power BI reporting solutions to accountants in practice and in industry. I help accountants to use Power BI to create intuitive, engaging reports from their accounting data. I deliver management packs,...