A friend of mine asked me how to create a bar chart in the style of Tableau Prep. Another important requirement is: It has to be in one sheet.
This is actually a series of bar charts with each in its own column. Theoretically this can be done on a dashboard with multiple sheets. That would be a bit tedious. Given that the data is in a single data source and the columns are just different categories, this makes things a little simpler.

I used the superstore data set to give it a go. Here is what I got.
The key to create this is using the Index() over Sub-category dimension on Row shelf. Place the Sub-category in cards such as Details or Label or Color.

I created option 1. Then she customized it exactly in the Tableau Prep style. I recreated it as option 2 below using Superstore data set:
Voila, this shows how we can create multiple bar charts in one sheet. The workbook can be downloaded here.

Custom Sort

Note that the sorting is done using the custom sort within the tableau calculations of Index(). The custom sort allows various sorting based on a field, such alphabetic or decreasing sales amount.

Null Values

In case of null values in Sum(Sales), the ordering may be in disorder. we need to use the following settings for Index(). Check both dimensions and move the column dimension to the top. Restart indexing from every Category. This setting actually works no matter when Sum(Sales) has nulls or not. The custom sort is the same as above.

Rank as Index

An alternative is replacing Index() by Rank(Sum(Sales)) if we want to sort by sales amount. Using Ranking as index seems a more robust solution. Nulls may interfere with the result sometimes. Try using Rank(ZN(Sum(Sales))) to fix the issue.



0

Add a comment

Blog Archive
Loading
Dynamic Views theme. Powered by Blogger. Report Abuse.