A ‘Sandwich Map’ is a term we use to describe basemaps that are broken into ‘Base’ and ‘Reference’ layers, with the reference layer sitting on top of your information.
We use this technique on a few of our basemap offerings in the ArcGIS Living Atlas of the World, notably the Canvas maps and the Human Geography maps. We also provide reference layers for use with some of our raster information, such as Imagery Hybrid, Terrain with Labels, and World Ocean.
But what of the rest? Frequently we are asked whether there are ‘sandwich’ versions of some of our other basemaps. The answer is no, but now you have the opportunity to build your own… Let’s look at an example:
A World Topographic Sandwich
The Vector Tile Style Editor (VTSE) is the key here.
The Base Layer
Make sure you are logged-in to your account. Open the VTSE, choose World Topographic Map (I’m making it easy – it’s the first option top left, and the default), then go straight to ‘Save As’. You are going to build two versions, so call this one ‘World Topographic Base’. Now settle in, because at the moment we don’t have a tool to help you with this:
Choose the layers option (second down in the left side panel), open the first layer, and start working through the sub layers. You are looking for any item that has a ‘T’ in the icon – this means it’s a text/label item. Switch it off
It’s as simple as that! … except that you have to work through all of the sub-layers to find the labels and repeat the process, and there are a lot!
There are some short-cuts though. Some group layers only contain labels (‘Landform’ is one in the Topographic map). If this is the case, you can switch the whole group off. Others, like ‘Populated Places’ have a majority of label layers. Here, it’s quicker to switch the group off, then find the non-label layers and switch them on again.
Make a thorough exploration of the map at all scales to find that inevitable label feature that you missed. Click on it, and it will open that item.
The Label Layer
Open a new VTSE window and save another copy of the World Topographic map. Call this one ‘World Topographic Reference’. You are going to repeat the process, but this time you are switching off everything EXCEPT the label items…
What do I do with… ?
There are always some features that raise questions, and for me that is usually the road shields. Do they belong with the base layer, connected to their roads, or in the reference layer, where they may become orphaned if you combine with a different base. There is no right or wrong answer to this, but there is a consequence: If you leave them in the base, there is a possibility that some labels will overwrite them.
Of course, if there is information not relevant to what you plan to do with the basemap (and that may include road shields), you can remove it from both layers.
There is nothing to say that a reference layer should have labels and nothing else. On some of my basemaps, for example, I’ve retained boundaries in the reference layer. Going a step further, if you use a multi-symbol approach (a line with a ribbon/tint band underneath for example), there is no reason why you shouldn’t split the components up between the reference and base. Whatever works best for you!
The Code Option
How comfortable are you at working with code? If you know your way around, this may be quicker.
Open the Edit JSON option in the side panel and search (Control/Command F) for ‘Label’.
Usually, but not exclusively, our code is arranged with the label layers at the bottom (drawing last).
Watch out for combined symbol/label items – they may not include the word ‘label’. If there are any layers you want to leave behind (in our Topographic Map example, there are some symbol layers towards the bottom), cut and paste them up and out of the way.
Once you have figured out what you are working with, you can select the items to be removed, then delete the code. Remember this is a one-way option! – once you have saved it, the layers are gone. Also, be careful what you delete at the top and bottom of your selection. If the map won’t refresh, it probably means you’ve deleted something you shouldn’t (or left something behind), maybe just a comma or a bracket.
As before, you will go through this sequence twice: Remove the labels (plus custom content) for the base layer, and everything else for the reference layer.
In a different context, John Nelson created one of his video segments on this process: https://youtu.be/frmqi8mL0vQ
An alternative to deleting the code is to add the line: “visibility” : “none” to each item you want to hide. This could take some time however, and, in essence, it is what happens when you switch it off in the Layers option.
It’s sometime later – you have completed both processes, and you’ve got the basis of your ‘Sandwich’ map. You’re not done yet…
Add your two components to the basemap layer in a web map, making sure that the reference layer is moved to the Reference section. If you already have your functional map layers prepared, add them. If not, look for a similar layer in the Living Atlas and add that. Zoom/Pan around the map to see how the reference layer is working. The relationship of a reference layer to your content is different, and there is no guarantee that the choices made when the basemap was designed will work well here.
In this example, the Nova Basemap labels are difficult to see when content is placed below them (A map from the Living Atlas showing foreign population in Spain). An adjustment to labels and haloes in the VTSE resolves that.
Don’t forget to look at label haloes. We use them in most of our basemaps, and they are designed to work with the information already there. This may mean that they have some color in them, and you might need to change that, along with width and blur settings, to get something more functional. If you plan to use your new basemap on more than one product, choose a neutral and unobtrusive color for the halo.
See: Polishing your Halo for more guidance on this.
A finished product
To help you on your way, I’ve built a ‘sandwich’ version of the Topographic Map. It’s a straight label/everything else split, with no style changes, and road shields included in the reference layer. Feel free to use it as a starting point for your work, but please save copies of the two layers to your own account rather than using this version directly. I will be taking it offline eventually.
Here is the Base layer
Here is the Reference Layer