A collection of my frequent dashboard tricks and tips from my work processes. Hope this helps you build a better user experience for your audience!

Back in Sept 2023, in the midst of cleaning my corporate internal processes; I realized there was a couple of things I was doing with every dashboard I created. While I can't share my work stuff, I figured I could repurpose some of these tricks to share with the wider #datafam . That eventually became my #VOTD (which was really exciting) - 10 hacks to bring your dashboard from good to GREAT ! Ever since, I have received many DMs about how to do some of it, so here I am... to break it down :)

⭐ Different Scales ⭐

When dealing with large numbers, one way to increase chart readability is the reduce the label scales to thousands (k), millions (m) or billions (b). However, this causes both the tooltips and labels to share that same scale.

🔎 Breaking it down for you 🔍

⭐ Different Formats ⭐

While you can create a parameter to allow dynamic measure selector, Tableau doesn't have an automatic way to assign the proper formats (#, $, %) to it. One way to hack this is to create two calculated fields - prefix and suffix; and add those into the labels and tooltips as well.

🔎 Breaking it down for you 🔍

⭐ Static Titles ⭐

When you have different calculations of the same measure in the same table, the measure names may become convoluted and hard to manage. While you could technically use the Alias to assign an alternative naming, you can't reuse the same name for different measures. Another way is to name the measures as how you want it to appear, but that becomes challenging as the number of measure names increases too. What I suggest is an easy hack - to use a container with multiple text objects. Do ensure that you keep the measure titles within a horizontal container and have it distribute equally, as that's the same methodology Tableau uses for its crosstab.

🔎 Breaking it down for you 🔍

⭐ Extended Axis ⭐

Particularly when you're building sparkline charts, it's usually good practice to label the first and last values, to provide some context to your users. However, the default axis does not factor in the length of your labels and may truncate or overlap the values with the trend lines. One way you can hack this, is to extend the axis range by incorporating a fixed LOD calculated field of your time dimension, and add it to your axis as reference lines. Be sure to set the line colors to None so it appears invisible to your users.

🔎 Breaking it down for you 🔍

⭐ Different Color ⭐

Did you know you can assign different colors to measure values? This trick is very useful for defining the negative and positive ranges for different measures, and helps to prevent the extreme values from skewing the color coding. In order to do this, you can right-click on the measure values and select use separate legends. After which, you can modify the color range of each measure.

🔎 Breaking it down for you 🔍

⭐ Special Characters ⭐

Unicode characters are extremely useful to add text manipulation and introduce simple iconography. Some of the most commonly use cases are:

🔎 Breaking it down for you 🔍

⭐ Scalable Legends ⭐

Tableau's default legends are not scalable and often requires a precise manipulation (i.e. sizing, floating). You can create your own legends using a box unicode (■), but you would still require a lot of manual adjustments. By using a INDEX() calculated field that computes along your selected dimensions, you can create a legend using square marks and labels that resizes automatically.

🔎 Breaking it down for you 🔍

⭐ Using Containers ⭐

Building dashboards can take a lot of time, and often requires recreating containers as well as formatting them (i.e. padding, background, size). The copy/paste feature for dashboard items was introduced in 2021.4 but there are limitations to it, especially when it comes to dashboard iteration. This feature will not work if there's an existing sheet within the container you are trying to copy. However, you can create templates using containers with colored blank objects as placeholders. These containers will keep all padding and sizes within its nested structure; and you can duplicate these as many as you'd like, to accelerate the dashboarding process.

🔎 Breaking it down for you 🔍

⭐ PNG vs SVG ⭐

When using images on your dashboard (especially as navigation buttons), do use SVG instead of PNG as the former has a smaller file size, and is pixel-perfect no matter how you resize it. For PNG, it depends on what size it was initially created and if you try to size it larger than the original file; it starts to get a little blurry and pixelated. However, do note that SVGs are still not accepted when using them as custom shape marks (C:\Users\Documents\My Tableau Repository\Shapes)

🔎 Breaking it down for you 🔍

⭐ Show everything ⭐

Tableau's default behavior when a visualization is granularized by a dimension, is that the tooltip will only show the value of that particular dimension value upon hover. However, you can force Tableau to show all values (which could be useful as additional context to your users) by creating as many Level of Detail (i.e. Fixed, Include, Exclude) calculated fields as your dimension's unique values. You can use a combination of excluding that dimension in the fixed LOD, and an IF/ELSE statement to filter a specific dimension value in the aggregation.

🔎 Breaking it down for you 🔍

⭐ BONUS: Expand/Hide Containers (DZV style) ⭐

One of the common questions I get for this dashboard is "How did you get the containers to expand and contract?". Back in 2022.3 - which was released in Oct 2022, Tableau introduced the Dynamic Zone Visibility feature. This was a huge step up from the traditional Show/Hide containers we were used to as it allowed you to use Boolean values (i.e. True/False) to control the visibility of any element in the dashboard. It is still one of my favorite Tableau features to date.

So the idea is that I needed the individual 10 tips container to fill up the entire space when it's expanded, and have each of them tiled when it's collapsed. Seems pretty easy right? Except you really need to get the container-ing right!

🔎 Step 1 - Creating the parameters and calculated fields 🔍

🔎 Step 2 - Creating the containers 🔍

🔎 Step 3 - Setting up the visibility values to the containers 🔍

🔎 Step 4- Setting up the actions🔍

❓ How this works is: ❓

So there you have it, a full breakdown of the 10 hacks to bring your dashboard from good to GREAT. Hope you find it useful, and feel free to reach out if you still have any queries :)