How to Create Your Own “My Vizzes” Viz

A couple of weeks ago, I created a “My Vizzes” visualization which showed various details about my Tableau Public visualizations. If you haven’t seen it, here it is (Click here to see the fully interactive version).




Update, September 6, 2017
Before you go any further...the day I posted this, Josh Tapley also posted a similar blog post detailing his method for scraping a profile. His is way better than mine because it leverages the Tableau Public API and doesn't require the manual copying and pasting of my method. So, if you really want to see how I did mine, keep reading. Otherwise, go check out Josh's method right away. You can find it here: Tableau Public Stats. Note: I have since changed over to Josh's method. I still maintain a separate master list of viz metadata--things like category, etc. which cannot be found anywhere on Tableau Public--but pulling view and favorites counts are all now totally automated.


I was absolutely thrilled when this won Viz-of-the-Day shortly after I posted it to Tableau Public. Since then, I’ve had a few people ask me how I scraped my profile in order to collect all the metadata. The truth is that my method isn’t particularly elegant, so my first response has generally been to refer them to Ryan Sleeper’s method. But, despite my method’s lack of elegance, it works well, so I’ll take a bit of time to explain it. At a high level, here are the steps of my solution:

1)  Expand Your Public Profile – Expand your Tableau Public profile so that all of your visualizations are visible.
2)  Copy – Select all the text underneath the vizzes (start from the first viz and just select all the way down the to bottom), then copy it.
3)  Paste – Paste the text into a Google Sheet template which is designed to parse out the important metadata.
4)  Other Info – A separate tab in the Google Sheet is set up for you to enter other information about your vizzes, including a description, links, categories, etc. This must be manually maintained, but you’ll only ever have to enter the information once.

Google Sheets Template
Let’s go into a  bit more detail on the Google Sheets template (you can find it here). As noted above, there are two sheets in the template. The first, Parse, is the parser used in step 3. It looks like this:


After copying the text from your profile, you’ll go into cell A2, right-click, then choose Paste Special | Paste Values Only. The text will then be pasted down that column. That’s all you need to do as columns B-J will parse out the appropriate information, namely the Title, View Count, and Favorites Count (columns H, I, and J, respectively).

From, here, you’ll jump over to the Vizzes tab, which looks like this:


Since your Tableau Public profile only contains the basic information parsed above, this tab will take a bit more time to configure. Essentially, you’ll need to manually enter all the basic information about each visualization. Of course, some of these fields are totally optional. If you don’t want to visualize your achievements, you can leave out that column. Or, if you don’t have a blog (you should start one!!) then you don’t need a blog link. The good news is that you only ever have to enter this information once. The last two columns, Views and Favorites are the only non-manual columns here. These are set up to do a VLOOKUP to the Parse tab and bring back the number of views and favorites.

From here, it’s just a matter connecting Tableau to the Vizzestab and building your own “My Vizzes” visualization.

Once all this is done, all you’ll ever have to do is update the view and favorite counts. To do that, just repeat steps 1-3 above. The beauty of using Google Sheets is that you can set up your viz to automatically update once daily. So you won’t have to open the viz in Desktop in order to refresh the data—it’ll be done for you. And you can always open the viz from your profile, scroll to the bottom and click Request Update to update the visualization on-demand.

A couple of tips:

1)  The VizIDfield is not strictly necessary, but I used it in order to ensure that each of my visualizations has a unique identifier. It was particularly handy when I created custom shapes based on images of every viz. I used VizID as the name for each of these custom images. It was then very easy to assign the custom shapes in Tableau based on this field.

2)  You will inevitably need to add rows to both tabs at some point in time. When you do this, just be sure to drag the formulas down so the automatic lookups do their jobs.

If you have any questions, let me know.

Ken Flerlage, September 5, 2017

No comments:

Powered by Blogger.