Menu

The Finder Dashboard

cover-image

A tweet recently arrived from Pam Gidwani, to let me know that now everyone can make use of my Tableau Conference Television vis. Thank you Tableau, for making all of this amazing knowledge from TC14 available to the public!

Pam Gidwani on Twitter

Not surprisingly, page views on TC14-TV have rocketed up since then, as lots of folks are taking advantage of all the free know-how.

To celebrate, I'll explain some lovely features of how that workbook was put together.

Intersection Logic

About a ~year ago, I was still quite new to Tableau and I had a specific challenge: to build a Finder dashboard. The education I received from Jonathan Drummey was a real mind opener.

I discovered that so much more can be done once you begin construct your views in terms of logical building blocks. Thank you!

Brainstorming Multi-Select Filters: INTERSECTIO... | Tableau Support Community

The gist of the finder problem goes like this: in TC14-TV, for example, each session recording has multiple keywords.

And we sometimes want for a multi-select quick filter to find the intersection between the chosen keyword values. A multi-select quick filter in Tableau normally finds the union.

A Series of Calculations

To get there, Jonathan taught me to think in terms of logical building block calculations:

# Keywords for Session

Of the various keywords chosen, how many of those exist for each conference session?

# Keywords Selected

In total, how many keywords have been chosen in the quick-filter?

I've wrapped the total calculation in a PREVIOUS_VALUE() wrapper to improve performance. From number 10 in The Next N Table Calcs, this works because all rows will print the value from a single computation.

(PS - though, if I'm not mistaken, I understand now that TOTAL() behaves differently from most other table calcs & is computed only once, anyway :)

Keyword Intersection Filter

Now comes the good stuff. When filtering for the intersection, we only want conference sessions for which the

[# Keywords for Session] >= [# Keywords Selected]

AND / OR

A parameter decides whether to use AND vs. OR logic. And there's a bit of an edge-case workaround, to help the intersection logic behave correctly when none of the conference sessions contain all of the keywords you're searching for.

That part about working around the edge-case is described in detail with my final update to our forum conversation.

The Finder Concept

In addition to highlighting the intersection logic, I really hope this post helps to illuminate the useful concept of a finder dashboard.

In short, a series of quick filters can help you to "find" the widgets you're searching for. And then, from that reduced list which match your criteria, the dashboard filter actions then bring other sheets into view.

What's More

This dashboard also gave me a chance to incorporate some Sheet Popping, which is explained very nicely by Joe Oppelt, Matthew Lutton, and Ville Tyrväinen in Sheet Swapping and Popping with Joe Oppelt (and a Tip on Searching the Tableau Forums).

So Why Wait ?

Not long now 'til TC15. Might I suggest we all commit to watching every session from TC14-TV before departing for TC15, Las Vegas in October ?

Word Count: 511

References

  1. "Tableau Conference Television", Keith Helfrich, Redheaded Step Data, November 17, 2014
    http://redheadedstepdata.io/tableau-conference-television

  2. "About The Conference", TC14, Tableau, April 29, 2014
    https://tc14.tableau.com/about

  3. "Fantastic News", Tweet by Pam Gidwani, Twitter.com, April 20, 2015 11:43 AM
    https://twitter.com/pamtableau/status/590224177522606081

  4. Jonathan Drummey, Data Blog, Drawing with Numbers, April 29, 2015
    http://drawingwithnumbers.artisart.org/

  5. "Brainstorming Multi-Select Filters:

How to Ask for Help from Tableau Support

cover-image

This post describes an approach to ensure you get the best possible response from Tableau Support, with the fastest possible turn-around time.

Context

After years of working on Enterprise systems I've found that, when I have a problem, the best solution is to solve it myself.

If I cannot solve it myself, then the problem is significant, and I want a valuable answer as quickly as possible.

Problem Definition

Tableau is a complex piece of software. Communication challenges can be among the largest of the hurdles to overcome when working through an issue.

The free text entry box allows unformatted text: no headers, no images. Worse: if my plain text is structured poorly, the Support Engineer may have no choice but to waste valuable time asking me questions.

My Solution

In each new support request, my free text contains one sentence. And there are two attachments.

Dear Tableau Support,

Please review the attached PDF and packaged workbook.

Thanks!
Keith Helfrich
(415) 400-6640

The PDF

The PDF is a no frills document, which follows a logical structure.

Descriptive text is augmented with screen shots that are marked up with arrows & call-outs.

Not each of these sections is required for every

Dates, Times, and Universal Coordination

cover-image

This post provides an overview and various methods converting dates between time zones, with examples and considerations for Daylight Savings time.

Having recently leveraged Dave Andrade's Twitter Analytics dashboard, I was curious to observe that, apparently, the optimal time for me to send tweets is on Mondays at around 2am. But wait. I don't send tweets while I'm sleeping. So, how can this be?

It's because the Twitter Analytics time stamps are stored in UTC.

Store Universally, Display Locally

As a best practice, one should store data in as constistent & portable a format as possible. For date & time values, that format is Coordinated Universal Time.

Coordinated Universal Time - Wikipedia, the free encyclopedia

So we should store our data in UTC and convert it into the local time zone for display. But conversion is tricky: offsetting the hour is easy. It's daylight savings that you need to consider.

Governments the world over are constantly tinkering with daylight savings. Not only national laws, but also state, provencial, and local municipality laws are each constantly changing.

The country of Argentina, for a personal example, attempted twice during my seven years living in Buenos Aires to switch to daylight savings. They

Leverage Dave's Twitter Analytics

cover-image

This post provides fast & easy steps for leveraging Dave Andrade's Twitter Analytics Dashboard to make it your own. There's a bit of R code, and a repeatable process to update your view with new data as often as you like.

"Stealing like an Artist" is a widely accepted within the Tableau Community. So much so.. the Tableau Public Blog has a post by Hanne Løvik with instructions for how to reverse engineer a dashboard:

How to Steal from the Best

Just finishing a bit of burglary myself, I figure the best way to repay the community is to publish my steps. Now you can steal a little bit from both of us.

Let's Make This Quick

1. Download Dave's Workbook

Use the fancy new toolbar on the recently re-designed Tableau Public, and pull Dave's dashboard down to your hard drive.

2. Grab Your Data

From analytics.twitter.com, you could get all the available data at once. But our goal is to build a repeatible pipeline. So let's begin that process now. Download one month at a time, each month to a separate CSV file.

3. Row Bind These Files Together

Here's a screenshot of my directory structure:

You

Blended Boolean Column Totals are Not What They Seem

cover-image

Stumped by a blending problem where the column total for a blended calculation was zero, I called on my friend Joe Mako.

Exceptionally generous with his time & knowledge, Joe helped me to understand: what at first had seemed to be a simple confusion was actually various roadblocks in Tableau that each require some effort to understand & work around.

Summarizing the knowledge I received from Joe, I'd like to thank him again for his generosity! All of the packaged workbooks are attached to my forum question, which is here:

Blended Boolean Column Totals are Not What They... | Tableau Support Community

Think of Totals as a ~Separate Sheet

The first bit of insight is that column totals can generally be thought of as a semi~separate worksheet. This is especially true for automatic totals.

In many ways, automatic column totals behave like a TOTAL() calculation. That is, they are performed on the server (inside of the data source). And as a result, they explicitly ignore the dimensions on the rows shelf of your worksheet.

This is an important concept, one that plays into the solution and one that Curtis Harris has also hinted at with his clever method for improving

Temp Tables Take Time

cover-image

In a performance optimized Data Mart, especially one utilizing Massively Parallel Processing (MPP) and Columnar Storage such as Vertica, the creation of temporary tables by a front-end tool like Tableau can be devastating to your response times. Temp tables have long been loathed by the administrators of all database technologies, across the board, for their negative impact on performance. But the situation becomes all the more exceptional in Vertica, precisely because the DBMS is so highly optimized for performance.

In this post I summarize some of my findings with respect to the use of temp tables by Tableau. This information is possibly incomplete or imprescise, and is certain to decay in accuracy over time. Yet the broader strokes & various considerations are ones you can utilize as context for your own investigations.

One of Three Strategies

To make use of the results from earlier queries during blending, grouping, and filtering operations (such as add to context), Tableau will generally choose between one of three strategies. If the first strategy doesn’t work out, then Tableau quickly tries next one. If that fails, then Tableau tries the last one.

Three strategies:

  • temp table in the database
  • sub-query in the database
  • data

Color the Dupes

cover-image

Not only because it rhymes with my first Tableau post ever, Color the Tips, but also because it's pretty darn cool, here's a post on how to Color Duplicate Records in Tableau.

Even if coloring dupes isn't your top priority, the table calcs / color palette know-how are super useful and they definitely transcend the use case. In fact, stick with me & I'll show you how to assign a distinct color palette to a continuous measure pill. There's juicy insight to be gained by doing so.

My goal was to highlight the strings that appear more than once, each pair with a distinct color. Having trouble with it, I went to the community forums with two problems:

  1. My table calcs worked, but they were kludgy
  2. Since they use aggregations, table calcs are measures
    • and measures can't receive a default color palette that is distinct

Coloring the Dupes (I'm a dupe! because I over-... | Tableau Support Community

Identifying Duplicate Records

My initial approach was over-kill, and I knew it. I was nesting five calcs to identify the dupes & assign them a distinct value for the color. Moreover, I was manipulating strings, which is bad for performance. When computing it's always

Tableau Conference Television

A little scraping, a little reshaping, some janitorial munging.

Some natural language processing, a little blending, insert an image, add a few "popping" dashboard actions, and violá!

Tableau Conference Television:

Big THANKS to all of these folks whose contributions to the Tableau Community know-how have been incorporated into this vis.

keyword intersection logic (Johathan Drummey)

sheet popping (Matthew Lutton, Joe Oppelt, Ryan Sleeper)

golden ratio (Ryan Sleeper)

making a vis that stops traffic (Anya A'Hearn, Dan Montgomery, Paul Banoub)

unexpected interactivity (Dustin Smith)

So many little details must go into a well designed dashboard..

Word Count: 97

NPR, Oh Data Where Art Thou? Deux.

cover-image

A second open letter to NPR.org

Regarding your article titled "No, Seriously, How Contagious Is Ebola?", October 02, I would ask is there not more to this story?

Your article addresses the question, 'should Americans be concerned?' And your conclusion is no, thanks to the country's public health system the Ebola virus is not likely to spread within US borders.

No, Seriously, How Contagious Is Ebola?

Reporting on a contagion scale, you conclude: Ebola scores a 2, while the Measles is nine times more contagious. "Nothing to worry about here" you report, with prominent info-graphic & supporting technical detail.

And there your analysis stops; satisfied within a very narrow context.

Please contrast your own data journalism and information visualization practices to a similar report from The Washington Post titled, "Ebola spreads slower, kills more than other diseases", By Bonnie Berkowitz and Lazaro Gamio, Published: Oct. 9, 2014.

Reporting on a deadliness scale, The Post finds Ebola to be most lethal; concluding that while more highly contagious virus like Mumps, Chicken Pox, Whooping cough, and Flu infect the unvaccinated more rapidly: a large majority of their victims recover.

How quickly Ebola spreads compared to other diseases

Data journalism communicates

The Anatomy of a Nested Table Calculation

cover-image

The twittersphere & inter-webs are abuzz with help understanding Tableau Table Calcs. Among the more recent, these are my favorites:

And fully two years ago now, Jonathan started to compile this list of resources for all skill levels:

With such a trove of useful information available, this post of mine is brief & tactical: The Anatomy of a Nested Table Calc, i.e. what does it look like?

Mixing Pigments

If data is our paint, then Table Calcs are the Tableau artist's wooden palette: the place where we can "mix & match our pigments".

For more detail on the difference between Table Calcs & Calculated Fields, see the Master Tableau Approach.

The Nested Table Calc

To annotate the Anatomy of a Nested Table Calc, I'll piggy-back upon the example recently narrated by Joe & Matthew in their 12 minute TRL video Ratio of Ratios.

First, a run-down of