It would be very helpful to know if there are any methods that can be applied to achieve the same objective as mentioned above.
I would also like to know how to create an action whereupon a click on a state opens its counties and a click on a county opens its cities, etc. There seems to be no way to display hierarchical level of detail filter to a user.
I was sure we would be able to accomplish this with parameters. I thought you could create a calculated field that depended on a parameter that would define a field as either the city, state, or zip code, for instance, and place that calculated field on the level of detail shelf. Turns out this doesn't work. I'll attach my attempt as a packaged workbook for the collective mind to ponder.
The issue is that a given field can only have a single geographic role assigned. Changing the value of the field under parameter control doesn't change what Tableau knows the role to be.
The only way to do this that I'm aware of is just to drill up and down through a hierarchy, with different levels of detail in the hierarchy having different geographic roles. But that means you end up with multiple fields with different geographic roles available in the view. Tableau needs to pick one of them. So you are dependent on Tableau choosing the lowest field in the hierarchy as the one to use for its geocoding. I'm not sure how it chooses - but in the past that has always worked for me.
But I just tried that with your example, by taking [City (From Parameter)] and [Zip (From Parameter)] off the view and just expanding and contracting the State hierarchy. For some reason Tableau chooses City, even when Zip is visible.
The other trouble with this approach is that it's only available on an individual worksheet, not on a dashboard.
Thinking about this a bit more - the hierarchy State->City->Zip actually doesn't map to the geographic hierarchy in a sensible way - so Tableau just has to pick one of the available roles at random.
What I mean by that is that ZIPs aren't uniquely contained in a City and conversely Cities aren't contained uniquely in a ZIP. If you look at that Superstore Sales data you will see examples of one City with multiple ZIPs and also one ZIP with multiple Cities.
The hierarchy of geographic roles is actually like this:
So I think it would only make sense to expect to drill down one branch of that hierarchy.
You can also use Joe's trick of using parameters to show/hide sheets in a dashboard. Create one worksheet for state, one for city, and one for zip, and then put them together in a dashboard with a filter pointing at the parameter. Here's another discussion on the topic: http://community.tableau.com/thread/111532
I'll attach a packaged workbook with an example. This is the first time I've used this trick (thanks Joe). I imagine it won't be the last.
This is definitely a workaround. It would be really nice to have this geography drill-down functionality built in to Tableau.