In 2013, I joined the incredible team at Slalom, focusing on Tableau and it’s been an amazing experience. Recently in 2014, I was honored and humbled to receive Tableau’s highest recognition of being named a Tableau Zen Master. Dynamic parameters are skype binary option signals well-documented demand in the Tableau community.
The reasons for this are numerous but most of all simply goes back to better enabling advanced analysis with a better, more intuitive experience for end users. It’s not a problem that I run into often, but when I run into it, it is a seemingly endless brick wall between the analysis that I can do and the analysis that I want to do. But what I am going to show you is extremely powerful in the right circumstance – and the funny thing is that it’s been right in front of our faces all this time. The solution comes from an actual client problem that was a bit of a brainteaser for a few hours.
Before I go any further, a big thanks to both Chris Toomey and Allan Walker of Slalom for allowing me to bounce some ideas off of them, even though I went in a different direction with this solution. Now creating these views in Tableau at each level of the hierarchy is not especially difficult – what is extraordinarily difficult is creating the interactive flow and filtering between these different levels of detail in an intuitive and excellent user experience. So the challenge became how can we dive in and out of a piece of the hierarchy without robbing users of a great experience? Let’s get a couple questions out of the way. This hack takes advantage of a trick with URL parameters, which means it will only work after the workbook has been published. We’ll talk about this more in a bit. Did you say something about dynamic parameters?
The easiest way to understand what I’m talking about is by drilling into the viz below. Note: I’m going to show two different solutions to solve the same problem. 3 of your choices will actually produce another visualization. But it totally works – if you have the patience for it. This is actually shockingly simple, so don’t blink as you might miss it. It actually comes from knowing a little bit about how URL parameters work. You may have used these before to create some customize links, or if you have ever written a blog or embedded a dashboard inside of a webpage you tend to learn a thing or two on this.
These are both very interesting pieces of information but neither is extraordinarily groundbreaking. Well of course there is – it’s our dear friend the URL action. URL Encode Data Values’ was all about, now is your time to find out, because you definitely want to check the box when you go with this solution. It’s what handles funny characters like spaces when you have to put them into a URL. So what we’re saying is you can dynamically set the value of the parameter by clicking on point in the data and using a URL action to set the parameter equal to the point in the data. They are dynamic because you set their values when you click on them. They are cascading because of the filter logic you’re using on each sheet that shows the relevant data for the current level of the hierarchy.
CLICKABLE, DRILLABLE CASCADING DYNAMIC PARAMETERS IN TABLEAU! I know – where has this been all my life? I’m now going to walk you through how I built a second, more elegant solution which leverages this URL parameter hack using super store sales data. In the first solution we created two parameters that were both LISTS of strings based on the values of Department and Category from the data.
To begin we need to create three sheets, one at each of the hierarchy used that we care about. Remember the goal of the view the hierarchy is to show two levels at a time – a single parent and all of its associated children. First we’ll create our year-over-year metric – it’s a Table Calc using the lookup function. You’re done creating the first level. Total Superstore now shows the level of Department, and the axis that originally Department now goes to Category.
As noted earlier, the easiest thing to do is to create two blank string parameters and set their default values to be blank. Creating the filtering is really simple as well. We’re simply going to match the parameters we created above up with the fields from the data. Filter it the same as before, excluding False.
Now, you’re all probably very familiar with the fact that you can create actions on dashboards. You’ll be greeted by a very similar action menu that should look very familiar. This is where we get fancy. Drill in to ’ and then click on the arrow at the end.
There’s a lot going on here so let’s talk about each piece so that you understand it. Understanding all of this is very important because this is how you make it both clickable and dynamic so that everything works. So you should be able to plug in your values and go. Here’s an explination by the famous Ben Jones of Tableau Public. It means there something else I want to add to the URL. Hides the top navigation area, making the view blend into your web page better. When they say required, they really mean some of the other URL parameters won’t even work if this isn’t included.
Specifies he target window name for external hyperlinks. In the last piece we are simply reminding Tableau that we want the second parameter to remain blank. You should now understand all of the pieces of the URL that we’ve created. URL Encode Data Values’ – this should properly encode any spaces, commas, and other special characters that are in the data. It is very important that you check this box. I go back up the hierarchy?