Skip to main content
All CollectionsPlanhat ModulesCustomer Intelligence Module
Visualising data: a charting crash course
Visualising data: a charting crash course

How to create great charts in Planhat

Christian Dreyer avatar
Written by Christian Dreyer
Updated over a week ago

This article is your "how to" guide to building great charts in Planhat.

It's often said that a picture is worth a thousand words. While nobody ever said "a chart is worth a thousand rows of data", it's just as true (but nowhere near as catchy...)

Great charts should give your audience everything they need to draw a clear conclusion and make a decision. Any more than that, and they'll get overwhelmed. Any less, and they'll be left asking lots of clarifying questions.

The thing is, just like pictures, not all charts are good or useful. To get the most out of your data, you need not only to pick the right chart for the job, but think clearly about what you need to communicate, and what your data can actually do.

Contents

  1. Bar (Vertical or Horizontal)

  2. Top List (Chart or Table)

  3. Multi Bar (Vertical or Horizontal)

  4. Stacked Bar

  5. Pie

  6. Doughnut

  7. Radar

  8. Gauge

  9. Cohort (Bar or Line)

  10. Time Series (Bar or Line)

  11. Stacked Time Series Bar

  12. Face/Off (Bar or Line)

  13. KPI

  14. Metric Table

  15. Data Table

  16. Matrix


I. Narrow down the options

The first step is deciding what you want your chart to show, to narrow down which charts will be fit for your purpose. Here are a few best practices based on the data you have, and what you want to do with it:

Categorical Data (Current Snapshot)

Categories

Grouping/Slicing

No Grouping/Slicing

< 5

  • Multi Bar

  • Pie

  • Doughnut

  • Radar

5+

  • Multi Bar

  • Stacked Bar

  • Single Bar

Any - Ranked

  • Data Table

Any - Unranked

  • Data Table

  • Matrix

  • Gauge

πŸ“Œ Note: some charts also allow you to assign "Custom Segments", meaning you can freely modify the grouping of values as you Split by or Group by certain fields. For example, segmenting a number of named CSMs as "UK - Health Product", versus "UK - Energy Product".

  • If only "Split by" is applied, then Custom Segments will be shown instead of the splitting field values

  • If both "Split by" and "Group by" are applied, then Custom Segments will be shown instead of the grouping field values, but the splitting field values will be unaffected

Continuous Data (Current Snapshot)

Metrics

Ranked

Unranked

Single Property

  • Top List (Chart)

  • Top List (Table)

  • Metric Table

  • KPI

  • Gauge

Multiple Properties

  • Data Table

  • Data Table

  • Matrix

Continuous Data (Time Series)

Metrics

Line

Bar

No Grouping/Slicing

  • Time Series Line

  • Time Series Bar

Grouping/Slicing

Using this guide, you should have narrowed down your chart choice to just 1 cell, meaning you can choose between anywhere from 1 to 3 charts to show your data.

II. Choose the best fit

Though any charts in your chosen cell will meet your needs in theory, in practice there are some important differences, meaning you should briefly consider the options before committing.

πŸ“£ Pro tip: the widget editor has a dropdown which allows you to switch seamlessly between widgets, and with no data loss between widgets which take the same inputs. This means you can configure one of the charts in your chosen cell, and quickly switch between the other visualisation options, to pick the most suitable.

Here's an overview of the different charts available, and some notable differences versus the other charts in their cells.

Bar (Vertical or Horizontal)

A set of bars, one for each object category, representing values of a single property

e.g. sum of ARR,

- split by Owner

Top List (Chart or Table)

A set of bars (or rows), one for each object, representing values of a single property in descending order

e.g. ARR (USD) 

- Company object, top 5

  • A Top List chart (versus a Top List table) is best suited when there are fewer objects, since it is less space efficient than the table - although it is more effective for pattern-spotting

Multi Bar (Vertical or Horizontal)

A cluster of bars for a metric split by one category and grouped by another

e.g. sum of ARR, 

- split by Phase, grouped by Product
- split by Owner, grouped by Company
- split by Industry, grouped by Health Score

  • The Stacked Bar is more space efficient and better for displaying group totals, but since each segment is not indexed to 0, may make it harder to spot patters between segments

Stacked Bar

A set of bars, with stacked groups per object category

e.g. sum of ARR, 

- split by Phase, grouped by Product
- split by Owner, grouped by Company
- split by Industry, grouped by Health Score
  • The Multi Bar indexes each segment to 0, making it easier to spot trends: however, it is less space efficient and does not show group totals as clearly

Pie

A circular representation, with slices representing each categories' share of the total

e.g. sum of ARR, 

- split by Phase
- split by Owner
- split by Industry

  • While Doughnut is functionally identical, it allows layering of a dynamic KPI onto the middle of the share widget, providing richer context

  • Radar enables better trend identification across categories, more clearly showing patterns, rather than simple shares

Doughnut

A doughnut-like representation, with slices representing each categories' share of the total

e.g. sum of ARR, 

- split by Phase
- split by Owner
- split by Industry
  • Radar enables better trend identification across categories, more clearly showing patterns, rather than simple shares

Radar

A star-like representation, with points representing each categories' contribution to the total

e.g. sum of ARR, 

- split by Phase
- split by Owner
- split by Industry

Gauge

A speedometer-like representation, with a share representing share (count) of an object or share (by) a property

e.g. share by ARR, for:

- companies with health score >6

  • In some cases, a KPI chart can be used instead of a Gauge, in cases where the gauge is being used to show a single current value, and there is no goal/target/share to be shown

Cohort (Bar or Line)

A set of bars, with stacked groups per object category, or a set of lines, one per object group, over time

e.g. sum of ARR,

- split by Phase
- split by Owner
- split by Industry

  • A Stacked Time Series Bar looks similar, but each bar segment corresponds to a range of property values chosen by you

  • A Face/Off (Stacked Time Series Bar) looks similar, but each bar segment corresponds to specific filtered segments or split groups (which can overlap with one another) chosen by you

  • A Face/Off (Time Series Line) could be used instead of a Cohort Line to split any single series by Industry: however, the Face/Off also allows you to create overlapping series, which is particularly useful for benchmarking and targeted group comparison

πŸ“Œ Note: an important differentiator between the Cohort Bar/Line and all other time series charts is that the Cohort chart includes the ability to decide which date on the object should be used to aggregate data over time, since the data will not necessarily be a native time series. For time series data such as Calculated Metrics, this means all the data will be summarised based on a single date relating to its object, rather than the date the data was recorded.

Time Series (Bar or Line)

Bar or line chart with a line per metric and time aggregation (sum, average), over time

e.g. week/month/quarter/year (daily average/sum):

- number of quality engagements
- Health Score
- NPS

Bar chart with stacked numeric buckets over time

e.g. week/month/quarter/year (daily average/sum):

- Health Score
- ARR

... by bucket

  • A Cohort Bar looks similar, but each bar segment is a defined category, rather than a range of property values chosen by you

  • The Face/Off (Stacked Time Series Bar) provides a similar view, but each bar segment corresponds to specific filtered segments or split groups (which can overlap with one another) chosen by you

Line chart with custom line segments, or bar chart with custom stacked segments, on one metric over time

e.g. week/month/quarter/year (daily average/sum):

- Health Score by filter
- ARR by company

  • In instances where you want to view a single series split by a single property, a Cohort Line is the simpler route: however, the Face/Off allows you to create overlapping series, which is particularly useful for benchmarking and targeted group comparison

KPI

Live KPI indicator, displaying the current formatted value of a given property

e.g.

- sum of ARR
- sum of Health Score
- average daily touch points (last 30 days)

  • A Gauge Chart can be used instead of a KPI, and is optimally used when there is a goal/target value, or to evaluate the current value in proportion to another metric value

  • A Metric Table can also be used to show current metric values, but only if sliced across (up to 2) dimensions

Metric Table

Automatically populated metric table, split by one category and grouped by another

e.g. sum of ARR, 

- split by Phase, grouped by Country
- split by Phase, grouped by Product
- split by Industry, grouped by Health Score

  • Matrix is more useful for spotting patterns where each category has many levels, since it colours cells based on their values, but can also become confusing, if cell values are not mean to be ranked or bucketed

Data Table

Automatically populated data table, displaying selected columns, sorting and limiting

e.g.

- Health
- Company Name
- ARR (USD)
- CSM Score
- Phase
- Last Touch Date

ordered by: ARR (USD) descending

Matrix

Grid display of properties split across two categories, with independent sorting (alphabetically or by column/row totals) and limiting across both columns and rows

e.g. sum of ARR, 

- split by Phase, grouped by Country
- split by Phase, grouped by Product
- split by Industry, grouped by Health Score

  • Metric Table is more useful if cell values should not be ranked or bucketed, providing an unbiased overview of the data split across both categories, but can become confusing for categories with many levels

πŸ“Œ Note: the matrix chart supports Custom Text Fields, allowing you to analyze unstructured or highly variable data in a structured way. This allows you, for example, to analyze:

  • number of products sold by product and customer tier

  • total over-consumption by product and sales person

  • total sales by region and salesperson

  • average company health across pricing plans and CSMs

III. Make your point

Now you've chosen the right chart for the job, you'll need to configure your presentation so it's as clear as possible, and provides clear and unbiased information. Here's a few final best practices to keep in mind...

Build with purpose

Any chart you build and present should be founded on your business case first, rather than any data discoveries. This applies in particular to charts involving data splitting or grouping by categorical inputs, since you'll always find something interesting or unexpected with sliced views. But in the interest of your time, and your chart's relevance, it's best to write down clearly what you're looking to show, then go about trying to show it. For example:

  • health score

  • split by product

  • monthly, over the last 6 months

Though this doesn't cover all the details (sum or average values? daily average or monthly sum? bar or line view?), it's a solid enough start to keep you focused on what you need, and not caught up in less relevant details.

Though chart exploration might be a useful activity for you to get to know your data, in practice it's unlikely to result in meaningful visuals. I could always discover, for example, interesting patterns when splitting CSM score by downloads or daily activity over time, but with no underlying rationale or objective, I'd just be distracting myself.

Drill down to extract the story

Although it's not best practice to rummage around in the data to see what sticks, if you spot something of interest in one of your charts, it might be a good idea to zoom in and try to identify underlying drivers.

For example, I find that Product A has seen a positive spike in health score, in the last two months, so then I create a filter for all companies using Product A, and build a Face/Off (Stacked Time Series Bar) with average health score over the past 6 months, split by company name.

This makes it clear that the recent increase was due to a small cluster of companies. Searching briefly in the data module, I notice some of them share an owner. I re-slice, this time by owner, not company, and find that George, the new CSM owning Product A relationships, has a portfolio far outperforming his peers on health. Perhaps he should share his approach with the rest of the team at our next meet-up?

While this is a trivial example, drilling-down in a targeted way is a powerful way to get the most out of your data, and have your charts tell a complete and memorable story.

Show the necessary data, and nothing more

We've said it before, and we'll say it again. More is not always better. You should try to keep your charts as simple as they can possibly be (or rather, only as complex as they absolutely need to be), to make sure they communicate clearly and effectively. This means splitting and/or grouping only when you need a deconstructed view (and not just for additional context), and combining few data series which occupy the same scales, allowing direct comparison.

Additionally, if there's a time component to your chart, make sure you're aggregating at the most relevant level (days, weeks, months, quarters, or years), and that you only show the necessary timespan. Although it is often good to provide context with previous time periods, you should only do so if these increase your chart's clarity, rather than introducing unnecessary noise.

πŸ“Œ Note: remember - your CSM/TAM is always here to help! So if you're still stuck trying to figure out how to present your data, or what specific settings to choose, reach out.

Did this answer your question?