How to choose a chart for your dashboard – the basics
Choosing the right chart is one of the most common decisions that a dashboard creator has to do. However, the science of chart choice is getting exponentially more complicated and formalized.
It is great that materials which aid the chart selection process are devised and made available for the public. One of the best are these:
- Articles and books by Nick Desbarats on the very complicated science of chart choice
- Financial Times vocabulary, suggesting what charts are best for what cases
- An article by Lisa Muth about choosing the chart type
- Power BI-specific chart template chooser from SQLBI
Still, I would consider that most of these resources are suitable for data visualization geeks who are really into investing their time into fine-tuning their charts to perfection. Most people working in business intelligence would like something simple. If you are one of them – you are in the right place because this article will provide a very simple way to pick the right chart for your visuals, but with a twist. This will not be another chart choice decision tree. No trees for you this time, sorry.
But if you are looking for something more advanced, you can still consider this technique as your first quick and dirty step, or as a fallback.
There is one more limitation that sometimes limit chart choices – it is the inflexibility of the tool in use, which does not allow some extremely optimized visuals to be created within reasonable time, and more simple visuals have to be used. This article will be tool-agnostic and will not address tool-specific issues.
Why chart choice matters
Chart choice matters because the wrong chart might be misinterpreted by the audience. They might perceive the data incorrectly or just right away do not understand what it shows.

How interesting is the chart above, made by Tableau Twin Ken Flerlage! How confused would be your regular business users after encountering triangle scatterplot in a dashboard! They would not even know this is called Ternary chart.
The right chart is the one which does its job, (according to Nick Desbarats). And even thought the data might be the same, every time the job is different, which makes the chart choice more difficult. But since we are exploring quick chart choices for making dashboards – let’s consider that the job of the chart is to show some numbers quickly and accurately, usually for comparison. Emotional and memorability properties are irrelevant. Which chart does this job best?
To find one, we need to address three criterions – expressiveness, effectiveness, and audience.
But before that, let’s get rid of the charts themselves.
We need encodings, I’m afraid
Encoding is substituting a value of a data point to a geometric or visual property of a mark. We can encode date as a position on the X axis and the total amount of all transactions as length. This way we get a bar chart. If we encode the number of transactions as position on the Y axis, and the average price of transactions on the X axis – we get a scatterplot.
By forgetting about charts and talking about encodings we will make our life simpler – forget all the versions of bar charts that are there – horizontal, vertical (some call them column charts, I find this unnecessary), clustered, stacked, ribbon and so on. Instead, we are going to check how appropriate is to show something as length.
Some data visualization tools, especially Excel, Power BI and python libraries for data visualization make us believe that a chart is a fixed thing and provides us templates. While other tools such as Tableau, ggplot2 or RAW graphs do not have pre-defined chart templates, instead they allow us to work one level lower – directly with encodings. You can immediately see which ones are more famous for being more powerful data visualization tools – the ones with encodings.
And here are some of the encodings we might consider. This list might not be finite, while I’m still exploring the possibilities of geometrical expression, but the essential options are already captured.
- Position
- Length aligned
- Length not aligned
- Arc length
- Angle
- Slope
- Colour Hue
- Hue Variation
- Area regular
- Area irregular
- Volume
- Density
- Shape
- Connection
- Containment
- Texture
There are sixteen encodings, which may seem a lot, but it is still less than all the available chart types. By the way, sixteen is a convenient number, I can arrange them into a nice grid:

Let’s see what encodings are best, and then we will combine them back into charts.
Evaluation of encodings
For this, we are going to rely on old research papers – “Graphical Perception and Graphical Methods for Analysing Scientific Data” by William Cleveland and Ron McGill (1985) and “Automating the Design of Graphical Presentations of Relational Information” by Jock Mackinlay (1986).
According to those papers, the first criterion to evaluate encoding is expressiveness – the ability of the encoding to express facts. If we can encode all the facts with a certain encoding, we can say that those facts are expressible in that encoding. It is a yes or no evaluation – for example shape cannot express numeric information, it would make it impossible for a reader to decipher the value of a hexagon ⬢ compared to one of a triangle ▲.
The next criterion is effectiveness – it is how well a chart displays the facts. Here we can compare and rank different encodings. For example, we can encode categories as lengths of a line, but it would not make much sense and wouldn’t be easy to read. The ranking provided in the paper by Mackinlay incorporates findings on numeric (quantitative) data by Cleveland and McGill and adds considerations for categorical (nominal) and ordinal data.
- Numeric (Quantitative) data is the one we visualize the most often – those are numbers, often aggregated as sums or averages.
- Ordinal data is the one which has a sequence, but differences between values are not meaningful. Think about OECD country ranking – high income, upper-middle, lower-middle, and low income – there are no values, but a clear sequence.
- Categorical (Nominal) data are different names of categories. Usually, there is no particular order.
After including more encodings than in the original Cleveland and McGill work, Mackinlay ranked all of them for all three types of data separately. There was no empirical research done for ordinal and categorical (nominal) data, which means those rankings might be more open to discussion. But eventually the results looks like this:

We might notice that at some point the encodings stop being expressive for given data – this type of data cannot even be displayed with that encoding. Also, some encodings are not available here. For example, there is no distinction between Length Aligned and Length Not Aligned, while this was present in the first paper. Then there is no Arc Length and Irregular Area here which are addressed in some other newer resources.
Three main observations can be derived from this table:
- Position is the one which is easiest to read overall.
- Numeric (Quantitative) information is best encoded as Position, Length, Angle and Slope.
- Categorical (Nominal) information is best encoded in Position, Colour Hue, Texture, and Connection.
What does that mean for dashboard designers?
Position!
Since Position is the one which is easy to recognize – never waste it! Even if you have a bar chart with names (like country names) apply meaningful sorting and avoid options like sorting as they appear in data or sorting alphabetically (also known in the USA as “Alabama first”, in EU as “Albania first”, in Africa as “Algeria first”). Sort by calculation, by geographic location, or something else which would add additional information.
By sorting your bar chart, you are adding Position as additional encoding, which simplifies the reading experience!
But if you are not sorting by value, then insist on consistent sorting – the position of a bar within a cluster can be used to decode which category does it belong! An example would be sorting directions the following way: North, East, South, West.

For Numbers
Since numeric information is best encoded in Position, Length, Angle and Slope, just use charts which use those encodings.
Here we need some clarification. It is generally considered that HUMANS ARE BAD AT READING ANGLES, which is not true, since we are reading clocks quite well. Also, Slope is Angle hanging in the air, similarly as Length with non-aligned baselines is like aligned Length, but hanging in the air. Slopes are compared between themselves based on the angle that slope makes against an imaginary horizontal line. So, people are unable to compare pure slopes, they convert slopes to angles first.

The obvious charts to use are:
- Bar chart (uses Length as primary encoding),
- Dot chart and Scatterplot (uses Position as primary encoding),
- Line chart and Slope chart (uses Angle and Slope as primary encodings).

Here is the overly simplified nuance-denying algorithm for choosing a chart:
- Use Slope chart to compare two points in time.
- Use Line chart only when data changes over time.
- Use Scatterplot to spot outliers.
- Dots are useful when you cannot start a bar chart at zero.
- Every other case – use bar chart.
Other chart types – proceed with caution! All those sankeys, pies, chords, treemaps, and other fancy stuff is a risky business. If you know what are you doing – do it. If you don’t – just avoid them. See in the example below what kind of exotic encodings are used for reading the pie chart. Angle is notably the least important!

For Categories
Categories are best encoded in Position, Colour Hue, Connection and Texture. So, when creating a multicategory chart, apply these first.

Generally, it is considered a good idea to avoid using Textures because they might create dizzying patterns on computer screen called Moiré patterns. On the other hand, Textures are the primary choice for dense multi layered maps. I only use them for distinguishing lines – a dotted line works well to indicate a threshold.
You might wonder what Connection has to do with common charts, but the simplest line chart uses connection to distinguish time series. Without connection, it would be challenging to follow a single series, regardless of what kind of shapes or colours you use.
We now know that Colour Hue is the best for encoding categories, (you can read more about colours in dashboards here). Also, colour can be used to highlight the most interesting marks in data to direct reader’s attention.
Adding categories add additional flavour to your basic charts because you are adding another encoding. Consider pie chart image above – making slices coloured differently would mean adding Colour encoding. Adding markers to the line chart would mean adding Shape encoding.
And do not worry that your tool does not allow working directly with encodings, if you keep track of encodings in your mind, you will unlock a bit more creativity, and even might invent a way to hack the tool, to make it show exactly what you want.
Audience
We have one criterion still left – the audience. There might be different levels of audience and their different levels on how well they can read charts. (more about audience in this article). Data scientist might be familiar with box plot, scatterplot and slope chart and even demand them, but common business user might be not and might get trouble with anything beyond bars and pies.
Safe for most audiences: Simple bar charts, line charts, pie charts, maps, heatmaps and shape size (proportional symbol) charts
Now combining the best encoding with the widest readability, we get quite a short list of possible charts:
- Bar charts (Length encoding)
- Line charts (Angle and Slope)
- Maps (Position)
I would even argue that maps do not have a place in the dashboard because displaying geographical names on the map leads to displaying actual data in a less preferable encoding – usually Circular Area or Hue Variation. A bar chart would do better here.
Did we end up just with bar charts and line charts? Yes.
Now you know how to choose charts
This simplistic and straightforward interpretation of some ancient research is not something that will cover all the needs of a creator of sophisticated data infographics. However, it is more than enough, and covers 98% of cases for a casual creator of dashboards.
You can create effective, informative, and easy to use dashboards just using those two chart types – bars and lines. With occasional numbers, and tables here and there (tables are also OK if done properly), having the right sorting and proper highlights using colour.
And if at some point you feel that you reached the level where you require advanced techniques – check the work of Nick Desbarats.

