Build a Stacked Donut Chart in Tableau

Have you ever wanted to stack 4 pie charts on top of each other to build a visual? Let’s have some fun building out a stacked donut chart or a “TrailBlazer” chart as I call it due to its likeness to a particular NBA team’s logo.

Stacked Donut Chart Thumb

Portland Trailblazers anyone?

Stacked Donut vs Trailblazer

In order to build out this chart I used an innovative technique shared by Simon Runc on the Tableau forums. Feel free to check out that post here.

Using Tableau’s Sample Superstore Data, Simon came up with an innovative use of the INDEX() function and the Size functionality to create three different pie charts that each show a respective percentage of a measure (in this case Sales) to the Total amount of the measure.

For example, the chart highlights in red the percentage of Consumer Sales as a percentage of all segment sales (i.e., Consumer + Corporate + Home Office). The grey portions represent all other sales, other than the segment of interest.

The trick to this approach is using the Index function to create a pie chart per segment. For example Consumer is assigned a value of 1, Corporate a value of 2 and Home Office is assigned 3. When the INDEX() value is placed on size, the three different charts are assigned sizes where one is slightly larger than the next.

Stacked Donut Raw 2

With a little division and axis customization, the three segments are placed on top of each other to provide a stacked pie chart effect. The hole is courtesy of the standard methodology for creating a donut chart which involves a dual axis.

It makes much more sense when you see it in action so make sure to watch the video!

Here is an example of the raw stacked donut chart before the “TrailBlazer” formatting.

Stacked Donut Raw

Feel free to interact with the viz and download the workbook on Tableau public:

As always, If you find this type of instruction valuable make sure to subscribe to my Youtube channel.

Definitely check out other posts of interest for building donut charts in Tableau:

All views and opinions are solely my own and do NOT necessarily reflect those my employer.

How to Highlight the Bottom Bar Chart Values in Tableau

 

I decided to make this video after someone left a comment on another video I made titled “How to Highlight the Top 3 Bar Chart Values in Tableau” asking how to find the last three values.

Youtube Comment Highlight Bottom 3

In this video I will show you how to highlight the bottom three sales values on a bar chart. You’ll also learn how to use a parameter to dynamically change the number of lowest bars highlighted.

Bottom 3 Bar Chart Values Thumbnail

We can accomplish the highlighting of the bottom N bar chart values via two ways. We can either create a set or create a calculated field to accomplish this task. The set method is cleaner but has its limitations when multiple dimensions are used in the visual. Therefore, the calculated field approach serves us well when we add multiple dimensions.

Watch the video to see how it all comes together but the calculation boils down to this:

RANK(SUM(0-[Sales]))<=[Highlight Parameter]

By adjusting the [Highlight Parameter] control, the user can determine how many bottom sales values are highlighted in the visual. This method also maintains its functionality when an additional dimension is added to the visual.

As always, If you find this type of instruction valuable make sure to subscribe to my Youtube channel.

All views and opinions are solely my own and do NOT necessarily reflect those my employer.

Tableau Dashboard Tutorial: Dot Strip Plot

In this video tutorial I describe a dashboard that I put together that displays the distribution of various NBA player statistics. I use the always handy parameter to enable the user to choose which statistics are displayed on the dashboard. Although I’m showing sports statistics measures in this dashboard, it could easily be repurposed to show the distribution of a variety of business related metrics.

I break the dashboard up into three areas: histogram, dot strip plot, and heat map. In the second part of the video, I describe in detail how to build out a jittered dot strip plot. The benefit of the jittered dot strip plot is that the marks representing NBA players obstruct each other much less as compared to the linear dot strip plot.

Techniques used in the dashboard were previous outlined in my Ultimate Slope Graph and How to Use Jittering in Tableau (Scattered Data Points) posts.

Feel free to head to my Tableau Public page and download the workbook for yourself. Drop me a line in the comments or on YouTube if you learned something.

As always, do great things with your data!

If you find this type of instruction valuable make sure to subscribe to my Youtube channel.

Create Rounded Bar Charts in Tableau

Part 1: How to Make Rounded Bar Charts in Tableau

In this post you’re getting two videos for the price of one (considering they’re all free for now, that’s a good thing). I put together a relatively simple dashboard to help illustrate a few intermediate level concepts. In this first video I take a look at the number of total assists by NBA players during the 2017-2018 season. In case you were wondering, Russell Westbrook led the league in assists during that season. If you don’t know who Russell Westbrook is, then skip this Tableau stuff and watch the last video immediately (and then come back to the Tableau stuff).

In the first Tableau dashboard video, you’ll learn two concepts:

  • How to make rounded bar charts;
  • How to filter the number of bar chart marks via use of a parameter;

Part 2: Apply Custom Sorting in Tableau

In the second video I build upon the dashboard built in the first video by showing you how to add a custom sort. The custom sort relies upon the creation of a parameter and a calculated field. The parameter and calculated field enable the user to select either a dimension (e.g., Player Name) or a measure (e.g., sum of assists) from a drop down box and the visualization will sort ascending or descending as requested.

The calculated field relies upon the RANK_UNIQUE function.

In this context, RANK_UNIQUE returns the unique rank of each player’s assist total. The key with RANK_UNIQUE is that identical values are assigned different ranks. As an example, the set of values (6, 9, 9, 14) would be ranked (4, 2, 3, 1), as no tied rankings are allowed.

Part 3: Interact with the Dashboard

Bonus: Russell Westbrook on the Attack

For those of you who do not know who Russell Westbrook is, I’ve got you covered. These aren’t assists but in these situations, he didn’t need to pass!

References:

Thanks to both the Tableau Magic blog for outlining the concept of rounded bar charts and the VizJockey blog for the custom sort methodology. Check out and support these  blogs!

As always, do great things with your data!

If you find this type of instruction valuable make sure to subscribe to my Youtube channel.

The Ultimate Tableau Slope Graph Video

In this video I tackle the subject of slope graphs also known as slope charts. I had some fun putting together this dashboard that illustrates the changes in wins for NBA teams during the 2016-2017 and 2017-2018 seasons. From the video you’ll discover that Chicago, Atlanta and Memphis are on a Hindenburg-like trajectory, while trusting the process in Philadelphia led to huge season gains in overall wins.

Here’s what you will learn from this video:

  • How to create a parameter that enables a user to select which win statistic measure to visualize;
  • How to use Table calculations like, LOOKUP(), FIRST() and LAST() to calculate period over period change;
  • How the impact of Mike Conley’s injury affected the Memphis Grizzlies last season;

Click the pic to interact with the Tableau Public visualization, also download the workbook and data to dissect as needed.

For your convenience the calculated fields that I used to create the measures are listed here. Note that [Selected Measure] is a parameter that you need to create that lists all of the measures.

Calc Select Measure
CASE [Selected Measure]
WHEN “Home Losses” Then [Home Losses]
WHEN “Home Wins” Then [Home Wins]
WHEN “Overall Losses” Then [Overall Losses]
WHEN “Overall Wins” Then [Overall Wins]
WHEN “Road Losses” Then [Road Losses]
WHEN “Road Wins” Then [Road Wins]
WHEN “vs East Conf Losses” Then [vs East Conf Losses]
WHEN “vs East Conf Wins” Then [vs East Conf Wins]
WHEN “vs West Conf Losses” Then [vs West Conf Losses]
WHEN “vs West Conf Wins” Then [vs West Conf Wins]

END
Better or Worse
IF [Selected Measure] = “Home Wins” OR
[Selected Measure] = “Overall Wins” OR
[Selected Measure] = “Road Wins” OR
[Selected Measure] = “vs East Conf Wins” OR
[Selected Measure] = “vs West Conf Wins”
THEN
//WIN MEASURES: Negative delta treated as “WORSE”, Positive delta treated as “BETTER”
(IF [Delta] < 0 THEN “WORSE” ELSEIF [Delta] = 0 THEN “SAME” ELSE “BETTER” END)
ELSE
//LOSS MEASURES: Positive delta treated as “WORSE” (more losses are worse), Negative delta treated as “BETTER”
(IF [Delta] > 0 THEN “WORSE” ELSEIF [Delta] = 0 THEN “SAME” ELSE “BETTER” END)
END
Delta
LOOKUP(SUM([Calc Select Measure]),LAST()) – LOOKUP(SUM([Calc Select Measure]),FIRST())
Delta ABS Value
ABS(LOOKUP(SUM([Calc Select Measure]),LAST()) – LOOKUP(SUM([Calc Select Measure]),FIRST()))
ToolTip
<Team> Trend: <AGG(Better or Worse)> by <AGG(Delta ABS Value)>
During the <Season> Season, the <Team> had <SUM(Calc Select Measure)> <Parameters.Selected Measure>.

I have to give thanks to Ben Jones at the Data Remixed blog for the inspiration!

As always, If you find this type of instruction valuable make sure to subscribe to my Youtube channel.

How to Compare Actuals vs. Forecast in Tableau

Forecasting in Tableau uses a technique known as exponential smoothing. This is when an algorithm tries to find a regular pattern in your data that can be continued into the future.

In this video I’ll share some helpful tips to help you determine which options you should select that will enable Tableau to make the most predictive forecast for your data. By the end of the video you will be able to differentiate between an additive and multiplicative data pattern and to evaluate MASE to measure the accuracy of the forecast.

I’m not talking about this Mase:

Harlem World

Rather, you’ll learn about the mean absolute scaled error (i.e., MASE) and how it helps you judge the quality of the model.

In addition, you’ll also also learn how to compare your actual data to the Tableau forecast in order to judge if the model is doing its job.

If you’ve used the forecasting capabilities in Tableau without knowing about these concepts, you might have generated an inaccurate error riddled forecast. Don’t just set a forecast and forget it. Watch this video and generate better forecasts in Tableau!

Here is additional reading from Tableau on the forecast descriptions (including MASE).

As always, If you find this type of instruction valuable make sure to subscribe to my Youtube channel.

Row and Column Highlighting in Tableau

In this post you’ll learn how to highlight values in your Tableau table using set actions. The dashboard in this video displays the number of total points scored by NBA teams by position in the 2017-2018 season. I will give you step by step instructions on how to implement row and column highlighting on this dataset downloaded from basketballreference.com.

I’ve only made a few minor tweaks but this technique was developed by Tableau Zen Master Matt Chambers. You can check out his blog at sirvizalot.com and follow him at Big shout out to Matt for sharing this technique with the Tableau community!

You can interact with my visualization on Tableau Public:

If you find this type of instruction valuable make sure to subscribe to my Youtube channel!