Tableau 2019.2 is currently in its second beta* which means it is getting closer and closer to release! And I’m excited – there are so many incredible new features: Vector maps are stunning! Show/Hide dashboard containers open up all kinds of new possibilities for UI in dashboard design. New spatial calculations such as MakeLine() and MakePoint() solve some challenges that required some data manipulation before. And then there are the little things that make a big difference like the ability to single-click replace a sheet in a dashboard and customize reference line tool-tips. But the one I cannot wait for is Parameter Actions!
*As it is beta, please note that anything can change and the final release may not look or work exactly as shown here.
Creating Parameter Actions
Parameter actions are incredibly easy to create! As an example, I’ll take this simple time series of sales over time:
My goal is to allow the user to select any point on the line and then highlight any points that are higher. First, I’ll create a parameter:
This parameter, named Sales Value, will capture a sales value when the user selects a point on the line chart. I’ll use it to compare other Sales on the timeline and highlight any that are greater.
Parameter actions can be created for individual sheets or dashboards. Here, I’m just going to work within this sheet, so I’ll select Worksheet > Actions from the menu. I’ll then add a parameter action in the dialog:
As with other action types, I’ll have options for how the user triggers the action (hovering over a mark, selecting it, or from a context menu). Then I’ll set the target parameter and which field in the view defines the value to store in the parameter (I’ll have to ensure data types match). If the field is a standard aggregation (e.g. SUM, MIN, MAX, AVG), then I can also change the aggregation used:
Now, I can use the parameter in all the ways I could use parameters before: to set the Top N or Bottom N of a filter or set, to change the size of bins, to set the value of reference lines, and in calculations for all kinds of dynamic results! All the dynamic interactivity you could achieve before is possible – but now, you can trigger it from interactivity with the visualization itself!
What can you do with Parameter Actions?
The sky is the limit! Really!
The above example is fairly simplistic – but parameter actions allow you to do so much that was difficult or impossible previously. The analytical possibilities are endless; the practical challenges that can be overcome are now within reach; the creativity of designers and analyst that will be unleashed will shock even the developers who created the feature!
Here are some thoughts:
- Allow the user to select a value in a visualization that will be the baseline for comparisons of all other values (what percent did your investment grow from X date?)
- Allow the user to dynamically change a SQL query in a live connection by clicking on a bar in a bar chart! (alarm bells just started ringing, but used responsibly, this could be awesome!)
- Leverage the Extensions API’s ability to easily read parameter values combined with new ways of setting those values for an amazing UX experience!
- Allow the user to dynamically change a view as they interact with it. Yes, you could do it with set-actions and a few other work-arounds before. But now the possibilities are endless. Have you ever wanted drill-down in the same viz or to allow dynamic filtering. Imagine the level of engagement within a single viz that you can now achieve!
In fact, that final bullet point, combined with a few other features and techniques, gave me an idea… Something I’ve wanted to do for a while, but couldn’t quite achieve…
…but now I can!
I’m just going to leave this here: