<< Back

Alteryx, navigating through Tableau mapping

This week saw the first Tableau Mapping Monday (#tableaumapping), a day in which 3 Tableau and GIS enthusiasts challenged themselves to produce as many polygon datasets for the Tableau community repository tableaumapping.bi. In total 27 datasets were created (some are currently in draft waiting for the post to be finished) covering UK, Denmark, Ireland, Germany, Australia, China, USA, Canada, Brazil, the EU and then of course The World!

Performance

On reflection I believe we could have done more! At one point Allan Walker even tweeted:

Looking at how I spent my time on each dataset it is seems that the bulk was taken up by finding, downloading & unpacking shapefiles, creating a blog post and cropping screen shots. The real work of transforming the shapefiles for use by Tableau was completely automated, taking about 30 seconds! Using that data to create an interactive example of it for use on Tableau Public was a little more than a few minutes (mostly upload time).

The Tool

Since being interested in advanced mapping in Tableau I’ve tried numerous ways to customise and convert shapefiles into Tableau Data Extracts (TDEs). Back when we launched tableaumapping.bi I was confident that I had the most refined method around involving Quantum GIS, an open source mapping tool, some plugins to breakdown shapefiles into nodes and then save those to CSVs, and then finally Tableau itself to join the CSVs and convert them to a TDE. Then Alteryx came along. In their public gallery you’ll find a basic converter to download or use online for free! That module will transform shapefiles to TDEs in seconds. All it lacks is one step to force transformation from the shapefile’s native projection to WSG 84 which is used by Tableau. You’ll find my modified version here. Module modified and linked to a fantastic module created by Adam Riley, to not only save the polygon as a TDE and CSV (for generating v7 TDEs) but also to create the bulk of the blog post HTML, we were ready to go.

3 steps to converting a shapefile and generating both data outputs and the html blog post content
3 steps to converting a shapefile and generating both data outputs and the html blog post content

Data Challenges

As always when creating new datasets there are challenges along the way, usually in the form of transformations needed to generate the desired output. One of the most common when creating spatial datasets is deriving one from the combination of others. For example the Scotland NHS Health Boards are based upon UK wards requiring multiple wards to be grouped to form the new health board. In tools such as QGIS this is of course possible using a merge function, however the way Alteryx treats spatial data just like any other data type makes the method recognisable to anybody who’s familiar with a SQL group by function. Combine Wards

Downloads

Get yourself a free copy of the Alteryx Project Edition. You can download the shapefile to polygon conversion tool as a packaged macro. To make it easily accessible within your spatial tool palette save the exported modules to %Program Files%AlteryxEngineRuntimeDataMacros

Export Macros

Then restart Alteryx and the macro will be easily accessible for future use. All it requires is a shapefile input and it will output the polygon dataset.

Palette

If you’d like to know more about Alteryx or how it can be used with Tableau please contact info@theinformationlab.co.uk

Craig Bloodworth

York, UK

One thought on “Alteryx, navigating through Tableau mapping

  1. I just stumbled on this blog… I had one clarification about Alteryx:

    >All it lacks is one step to force transformation from the shapefile’s native projection to WSG 84 which is used by Tableau.

    All spatial data in Alteryx is converted to WGS-84 internally. If the SHP file has a proper PRJ file, this conversion will always happen. The only reason you would ever need to specify a projection for SHP files in Alteryx is if the PRJ file is missing.

Leave a Reply

Your email address will not be published. Required fields are marked *