Here at Esri we talk with our customers on a regular basis, and one of the things we’ve learned is how many ArcGIS power users also use Tableau for business intelligence, slicing and dicing data, and visualizing patterns. We think that’s great! Tableau and ArcGIS are complementary for many kinds of analysis.
In Tableau, one of the data visualizations you can make is a map. The product ships with pre-defined spatial datasets so you can associate data with common administrative boundaries (zip code, county, state), or place names. There’s also a background map based on OpenStreetMap data. The resulting combination of background map and single symbol or filled map layer can be used in Tableau Dashboards and Stories.
In organizations using both ArcGIS and Tableau, we’re beginning to hear questions like:
- “How can I use the authoritative spatial data I manage in ArcGIS in Tableau?” For example, police districts or sales territories.
- “How do I get different ArcGIS basemaps into Tableau?”
- “How can I mash up my Tableau analytics with additional geographic layers?”
We wanted to give you some ideas for leveraging ArcGIS content in Tableau. Our own Josh Venman from Esri Australia and Suzanne Foss created a tutorial for how to use ArcGIS and Tableau more together. It covers how to import features from geodatabases, bring in ArcGIS basemaps and get multiple layers into a background map in Tableau. Without further ado, check it out below or here.
We hope this helps you! If you have any questions or feedback on this, please leave a comment below.
How To Use ArcGIS Maps as Tableau Background Map
The recommended workflow to use ArcGIS maps as the background map in Tableau is to publish ArcGIS base data and optionally, overlays of interest to ArcGIS Server with WMS enabled.
I. Required Software:
a. ArcGIS for Desktop 10.0 or later
b. ArcGIS for Server 10.0 or later
c. Sample Basemap: ArcGIS_SampleCanvasBasemap.zip
II. ArcGIS Steps:
a. Extract ArcGIS_SampleCanvasBasemap.zip to a location accessible to ArcGIS Server
b. Open CanvasBasemap_v10.mxd in ArcMap
c. Add any desired overlays to the map and symbolize them
i. For best performance, set overlays and base layers to same projection
d. Save the map with a new name that reflects the changes, and publish the map to ArcGIS Server
i. Ensure that WMS is selected as a capability on the service
f. Optionally, the map can be converted to a tile package and published to ArcGIS Server asa tiled map service. (See next section for use of a tiled map service in Tableau)
III. Tableau Steps:
a. Open Tableau
b. Go to Tableau’s menu item Map > Background Maps > WMS Servers…
c. Click the Add… button and paste the WMS endpoint URL from your ArcGIS service:
http:///arcgis/services//MapServer/WMSServer?request=GetCapabilities&service=WMS (Click the Close button)
d. Go to Tableau’s menu item Map > Background Maps > select your WMS service
e. Go to Tableau’s menu item Map > Map Options > set options for layer visibility and washout in the background map
f. The connection to the WMS service will persist when you save the Tableau workbook
IV. Additional Resources
a. Sample Canvas Basemap Download
b. How-to Video
ArcGIS Tiled Map as Tableau Background Map
The recommended workflow to use ArcGIS tiled map as a background map in Tableau is simply to add it in Tableau.
An ArcGIS tiled map could be (1) an ArcGIS Online Basemap, (2) a tiled service coming directly from your own ArcGIS Server, or (3) a tiled service hosted in your ArcGIS Online organization subscription.
To use a basemap that is delivered from a server, Tableau offers the option of referencing that basemap through a ‘TMS’ file. The server is required to meet the following criteria:
- Maps are returned as a collection of tiles
- Tiles are in Web Mercator projection
- Tiles can be addressed by URL using the same numbering scheme as common web mapping
The format for a TMS file is:
<?xml version="1.0" encoding="utf-8"?>
<mapsource inline="false" version="8.1">
<connection class="OpenStreetMap" port="80" server="<server-url>" url-format="<url-format>" />
<layers>
<layer display-name=’Base’ name=’base’ show-ui=’false’ type=’features’ request-string=’/’ />
</layers>
</mapsource>
Additional parameters that can be included to control the appearance of the background map are documented in a Tableau Knowledge Base article.
I. Required Software:
a. ArcGIS Online (organizational subscription) OR b. ArcGIS for Server 10.0 or later
II. Tableau Steps:
a. Create a TMS file referencing your service of choice
b. Place the TMS file in the correct directory for Tableau to recognize it:
i. Tableau Desktop (Mac): /Users//Documents/My Tableau Repository/Mapsources
ii. Tableau Desktop (Windows): C:\Users\\Documents\My Tableau Repository\Mapsources
iii. Tableau Server: C:\Program Files\Tableau\Tableau Server\\vizqlserver\mapsources
c. Open Tableau
d. Go to Tableau’s menu item Map > Background Map > select your new map in the list (Note: you may see a warning about not being able to render the map if your tiled map service does not cover all of the scales required by your data in Tableau)
e. Go to Tableau’s menu item Map > Map Options > check on your custom map layer
f. Proceed to work with the Tableau interface with the tiled background map
III. Additional Resources
a. Sample TMS Files:
i. Esri Basemaps:
1. Shaded Relief
2. World Imagery
3. Light Grey Canvas
4. World Terrain
5. World Topographic
ii. Others
1. https://esri.box.com/s/h2un1yqnfy8k74c25ury8w46beyhxnpb
2. https://esri.box.com/s/14owpw67wmvy2z5cxlwqoq024sb4emch
b. How-to Video
How to Use ArcGIS Features as a Tableau Marker Layer
The recommended workflow to use ArcGIS data as a marker layer in Tableau is to transform ArcGIS features into a Tableau-supported format.
A geoprocessing model wraps all the steps required to transform an ArcGIS polygon feature class into a Tableau-ready table in to the same database as the original feature class’s parent geodatabase. This model can be run through Python on a scheduled basis to keep the Tableau-ready data in sync.
In the example above the end result is a non-spatial table in a SQL Server Database. However, Tableau can connect to any of the databases that ArcGIS supports for enterprise geodatabases.
I. Required Software:
a. ArcGIS for Desktop 10.0 or higher b. Custom Geoprocessing Tools: Tableau Tools (10.0, 10.1/.2, or 10.3)
II. ArcGIS Steps:
a. Open ArcMap and add the ArcGIS data to be transformed to a Tableau-ready table b. Open the ArcCatalog pane and browse to the location of Tableau Tools_.tbx c. Expand the toolbox and run the tool Polygon to Tableau Point Table
i. Use your ArcGIS data as input
ii. Indicate a distance tolerance for polygon simplification
iii. Specify the coordinate system of the input polygons and any necessary geographic transformations
iv. Specify an output location (can be in an enterprise geodatabase or an external file)
v. Note: if ArcGIS data changes, this step will need to be repeated
III. Tableau Steps
a. Open Tableau
b. Use the standard Connect to Data tool to connect to the newly created ‘polygon’ table from the ArcGIS process. c. Use this new table as the source of data for a Polygon marker type in Tableau. d. After connecting to the database and selecting the Tableau-ready table, the steps are:
i. Drag PointId to Path
ii. Drag PolygonId to Detail
iii. Double-click on Latitude
iv. Double-click on Longitude
That is all that is required to draw the basic map.
e. At this point, any measure can be dropped on to the Color area to render the map based on that value.
f. In the example below, the data is a set of Medicare Local boundaries in Australia. Medicare Local Name has been dragged from the Dimensions area on to the Color area.
g. Once created this map sheet is no different from one created using Tableau’s built-in mapping and it can be used in Tableau Dashboard and Story sheets.
IV. Additional Resources
a. ArcGIS Tool Download
b. How-to Video
Have a question or feedback? Please comment below.