7/23/2015

How to create a radar chart in Tableau

Radar chart: I can see you...

After my last blog post about The Social Progress Index, I had a question about the creation of a radar chart. I will try to answer the question clearly during this blog post. On my own, I think radar chart is intersting if you want to compare members of a dimension in function of several metrics (you can also use Parallels coordinates). For example, when you want to buy a smartphone you can compare several devices with a radar chart (metrics: battery, camera, memory...). Let's try to explain how to create this in Tableau.

Trigonometry, my best friend ever!


To create a radar chart, I have to use trigonometry formulas... You remember the circle with Pi and number and stuff like that... ?

Unit circle angles color.svg
"Unit circle angles color" by Jim.belk - Own work. Licensed under CC BY-SA 3.0 via Wikimedia Commons.

Well... It is important to use it to create axis and it depends on number of metrics you want to display. Indeed, if you want to display 5 axis (= 5 metrics) you have to use differents formulas than 6 axis chart. In my case I used a 12 axis chart so I had to use several formulas (as on the image above).
Thanks to Internet I was able to find the different formulas and create a calculation in Tableau for X axis and Y axis.

Calculation for [Xaxis]
case [Dimension]
    when "Member 1" then 0
    when "Member 2" then [Value] *(1/2)
    when "Member 3" then [Value] *(sqrt(3)/2)
    when "Member 4" then [Value]
    when "Member 4" then [Value] *(sqrt(3)/2)
    when "Member 5" then [Value] *(1/2)
    when "Member 6" then 0
    when "Member 7" then [Value] *(-1/2)
    when "Member 8" then [Value] *(-sqrt(3)/2)
    when "Member 9" then [Value] *(-1)
    when "Member 10" then [Value] *(-sqrt(3)/2)
    when "Member 11" then [Value] *(-1/2)
end

Calculation for [Yaxis]
case [Dimension]
    when "Member 1" then [Value]
    when "Member 2" then [Value]*(sqrt(3)/2)
    when "Member 3" then [Value]*(1/2)
    when "Member 4" then 0
    when "Member 5" then ([Value])*(-1/2)
    when "Member 6" then [Value]*(-sqrt(3)/2)
    when "Member 7" then [Value]*(-1)
    when "Member 8" then [Value]*(-sqrt(3)/2)
    when "Member 9" then [Value]*(-1/2)
    when "Member 10" then 0
    when "Member 11" then [Value]*(1/2)
    when "Member 12" then [Value]*(sqrt(3)/2)
end

It is very important to have the same [Value] scale for each [Dimension] members! Indeed, the 12 axis have to be the same. In my case the scale was from 0 to 100.

Build the radar to detect everything


After the creation of calculations, I had to build the chart. To do this, I just have to drag and drop the [Yaxis] on the lines shelf and the [Xaxis] on the columns shelf.


You can note that I use the aggregation Average (because Sum will returns a wrong result). Here I have only 1 point. To create the radar I have to use several dimensions (in my case, [Country] and [IndexType]). The [IndexType] allows me to draw 12 axis because this is a dimension with 12 members; [Country] allows me to draw 1 radar by country. If I want to draw the average radar chart, I can remove the [Country] field. To have several points I add [IndexType] on the Mark shelf as a Level of Detail.


After I can change the Mark to draw a polygon and add [Country] as a quick filter.


To have a beautiful radar, the last things to do are put [IndexType] as a Path to follow and Fix axis between -110 and 110 (or whatever you want to have enough space between borders and chart).


Some Formatting and "VoilĂ "!


To give some design to my chart, I chose to remove grid lines, Zero lines and borders, and to hide headers. Moreover, I chose to give some trnasparency and a border to my polygon in order to have a more beautiful chart.


Finally, I drew a background image to have reference axis in order to give some visual impact. Indeed, I think it is better if you know where the maximum is.


To add beautiful tooltips, it is important to put AVG([Value]) on the Mark shelf and to configure the tooltip like this:


And "VoilĂ "! The radar chart is done!


Thank you for the reading!

4 comments:

  1. It is the easiest and best approach to radar-charting in tableau I have come across so far. I actually managed to replicate these steps:)
    Thanks very much!

    ReplyDelete
  2. plz somebody spider chart 2 dimension and 1 cntd(customername) this is requirement. how to create spider chart send me workbook. and also what are steps and why are using this chart. my mail id. vndwh12@gmail.com

    ReplyDelete
  3. what are the calculations for a 10 axis graph?

    ReplyDelete
  4. Here's another video that explains simple radar charts - https://www.youtube.com/watch?v=mqC4saeWB0A

    ReplyDelete