When I first applied to The Data School, map charts immediately caught my attention. They looked visually impressive and felt much more interactive than the charts I was used to building. Most of my experience was with scatter plots, line charts and boxplots, but none of them really allowed me to explore my data geographically.
It’s tempting to add a map to a dashboard whenever geographic data appears. While maps aren’t always the right choice, when they are they can reveal patterns that other charts can’t. However, building them isn’t always as straightforward as it first seems.
In this blog, I’ll walk through some of the lessons I learned while building a map of London wildlife sightings in Tableau.
Lesson 1: Map Layers
If your data contains only latitudes and longitudes, you can plot points on a map, but those points won’t be connected to a wider geography such as a city or borough. They will simply appear as individual locations.
If you want to add that level of detail to your map, you will need to add another map layer connected to a separate geographic dataset.
Map layers allow you to stack multiple geographic datasets on top of each other in the same map. For example, one layer might contain your observation points, while another layer contains borough boundaries. This helps viewers understand not just where observations happened, but also which areas they belong to.
Adding layers gives your map more context and makes it easier to identify patterns across different regions. However, adding too many layers can also make the map harder to read, so it’s important to think carefully about what information actually adds value to the story you’re trying to tell.
Lesson 2: Spatial Files
If you decide you want to add geographic boundaries to your map, the next challenge is actually getting those boundaries. Tableau includes some built-in geographic levels like countries and states. But if your projects requires boundaries that Tableau doesn’t already provide, for example boroughs, you will probably need a spatial file.
Spatial files store geographic shapes that define boundaries. These shapes can represent almost anything including custom territories. In my case, adding London borough boundaries meant connecting Tableau to a spatial file containing those shapes. Once connected, the shapes could be displayed as polygons on the map and used as another layer alongside the observation points.
This means building a map sometimes involves a bit more data preparation than you might expect.
Lesson 3: Slow Performance
The final lesson I learned is that maps can be surprisingly heavy to run.
Each point on a map needs to be rendered geographically, and each polygon in a spatial file can contain thousands of vertices defining its shape. When you combine large datasets, spatial boundaries and multiple map layers, the performance can start to slow down.
You might notice things like maps taking a long time to load, filters lagging or refreshing slowly or the whole dashboard feeling less responsive.
This is especially common when plotting thousands of individual points, such as wildlife observations.
There are a few ways to improve performance. For example, you may be able to simplify/filter spatial files, aggregate data where possible, or limit the number of layers in a map. Even small adjustments can make a big difference.
Maps are one of the most visually engaging ways to explore data, but they also come with their own set of challenges. That said, once everything comes together, the result is rewarding and gives so much life to geographic data.
