PowerBI

Quadrant charts in Power BI

There is just so much data out there that it’s just almost impossible for the human mind to make sense of it.
The best way to start making sense of large datasets is by visualising it and take advantage of your inate human ability to spot patterns / trends and correlations.

I’m gonna kick off a series of posts on the different data visualizations and how to create these in PowerBI and when to use them. This brings us to the First the Quadrant Chart. Here is a sample of a Quadrant chart i created in PowerBI – using the rotten tomato movie rating Dataset.

The Quadrant chart is used to identify patterns and trends in data. which is based around the XY Axis.
The chart is divided up in quadrants (often the center ) which forms 4 Separate Areas. The values do not need to be numeric however.

When is it best to use a quadrant chart ?
it’s a good choice to provide wide angle view of data that ranges in opposite directions. And is best used with 2 sets of related data. If the points create a pattern – that pattern can be used to make predictions and draw conclusions on the correlation between the 2 data sets. In this example we are looking at the Rating of movies – the x axis is ratings from the Rotten tomato Critics and on the Y Axis we have the ratings provided by the general public.

These ratings do not always align. So we have 4 Quadrants here.
1 – Movies rated as bad by both critics and Audience
2 – Movies rated as excellent by Critics but as bad by the Audience
3 – Movies rated as bad by critics but as Excellent by the Audience
4 – Movies rated as bad by both critics and audience

List of Measures to create.

1 – Create the Measures for the Averages both X and Y Axis

Average X = AVERAGEX(ALLSELECTED(RottenTomatoesMovies), RottenTomatoesMovies[tomatometer_rating])
Average Y = AVERAGEX(ALLSELECTED(RottenTomatoesMovies), RottenTomatoesMovies[audience_rating])

2 – Create the Quadrant Color Measure

QuadrantColor = 
VAR CurrentX = SELECTEDVALUE(RottenTomatoesMovies[tomatometer_rating])
VAR CurrentY = SELECTEDVALUE(RottenTomatoesMovies[audience_rating])
VAR AverageXValue = [Average X]
VAR AverageYValue = [Average Y]
RETURN
SWITCH(
    TRUE(),
    CurrentX < AverageXValue && CurrentY < AverageYValue, "#48B847", //"Red
    CurrentX < AverageXValue && CurrentY > AverageYValue, "#F38082", //Pink
    CurrentX > AverageXValue && CurrentY < AverageYValue, "#BF8ABE", //Blue
    CurrentX > AverageXValue && CurrentY > AverageYValue, "#00ACD5", //Green
    "#000000"
    )

3 – For the Quadrant chart with the Quadrant split exactly to the middle of the chart

Quadrant X Line = 
DIVIDE(
    MINX(RottenTomatoesMovies, RottenTomatoesMovies[tomatometer_rating]) + MAXX(RottenTomatoesMovies, RottenTomatoesMovies[tomatometer_rating]),
    2
)

Quadrant Y Line = 
DIVIDE(
    MINX(RottenTomatoesMovies, RottenTomatoesMovies[audience_rating]) + MAXX(RottenTomatoesMovies, RottenTomatoesMovies[audience_rating]),
    2
)

Author : James Botes

James Botes is a Cape Town Senior Business Analyst (CBAP) with a keen interest in Systems Thinking & Solving Business Problems. Founder and Creator of the site and you tube channel BASensei. Linkedin : https://www.linkedin.com/in/james-botes-73a63b67/

Leave a Reply

Your email address will not be published. Required fields are marked *

7 + six =