When building web mapping applications, choosing the right basemap is not always an easy task. I always look for basemaps that will make my data stand out. I do not want the basemap to be a distraction. I also ask that the basemaps provide good context: maps with rich background information, generally in the form of roads, place names etc.
Sometimes, there seems to be no good choice. The very rich basemap takes away attention from my data, and the basemap that sits quietly in the background does it at the expense of being too sparse.
At the heart of this dilemma is the fact that there is not just one good basemap that fits all situations. It all depends on how rich your operational data is, what type of symbols you use to represent it, what background information is enough for your specific app, etc
While ArcGIS Online provides you with quite a variety of basemaps, in this post we are going to explore a handy technique for giving a final touch to those basemaps. A technique that may actually achieve the balance you were looking for, without requiring you to make any new maps from scratch. Using logic available in Flex and Silverlight, we will apply a client-side color remapping to the map tiles. This makes it possible to apply a great number of styles to existing basemaps without creating new tile caches.
It is probably best to look at same examples to see what I mean. First, let’s have a look at San Diego through the lens of the “Streets” basemap from ArcGIS Online:
Now, let’s apply a light gray-scale tint to it:
And a darker one:
Here is my midnight-blue version:
Well, that may be too psychedelic for some, although the same effect applied to the “Terrain with Labels” basemap over Florida gives an interesting look:
Just like there is not a basemap that fits all, no one filter will give a magical touch. So the key is to learn enough about how to do this so you can create your own filters. There are quite a few articles out there describing the science behind this trick. Paul Haeberli explains it quite succinctly. But to make things simpler, we have created a couple of apps that will let you interactively create filters for your basemaps. These apps will help you incorporate this technique into your own projects. Play with the live apps, download the source code and enjoy:
Contributed by Ismael Chivite of the ArcGIS Server product management team. Idea originally sparked from looking at Toby Segaran’s Walmart Growth video. Sample apps and source code written by the Esri Applications Prototype Lab. Also thanks to Antony Jayaprakash and Mansour Raad.