The Application Programmer Interface (API) in Modern Cartography: Development and Prospects Michael P. Peterson University of Nebraska at Omaha Omaha, NE USA 68182
Application Programmer Interfaces (APIs) The code behind most maps For Multi-Scale Pannable (MSP) maps that most people use For interactivity, place-finding, navigation, user-defined information
Importance of APIs Library of code that provides access to a variety of mapping functions 4.6 billion websites embed a Google Map with an API An API exists for all major online map providers
Evolution of Mapping APIs How have APIs evolved since their introduction in 2006? How has the pricing structure changed? Available tile-layer sets What is the influence of Google? Which API to use?
A short history Google Maps introduced in 2005 Based on a revolutionary system of presenting maps at multiple scales with a series of 256 x 256 pixel tiles Written by Lars and Jens Eilstrup Rasmussen in Sydney for Where 2 Technologies; purchased by Google Allowed for Multi-Scale Pannable (MSP) maps with 20 or more different map scales that could be panned from side-to-side; also satellite images
2005-2010 Google Maps API introduced in 2006 All major map providers adopt/copy Google’s tile-based method of map delivery But develop their own APIs and map tiles Google becomes #1 map provider by 2009, exceeding MapQuest MapQuest had become a “standard” map
MapQuest Started their online mapping service in 1996 Based on creating a user-defined map JPEG image embedded into a webpage “MapQuest it” became synonymous with finding a location and determining how to get there While website was often slow, people used the service and became accustomed to the look of the maps Even with a better user-interface, it took four years for Google Maps to overcome its dominance
2010 - 2015 Introduction of vector tiles Text can be changed; no longer “burned” into raster tiles Google Maps v3 introduced in 2010 Replacing bloated v2 code Animation code added 2013 Introduction of Leaflet, an open-source, non-aligned API
2015-present Entrenchment of other map providers Yahoo terminates its service Both Yahoo, Microsoft align with Nokia (Here) Mapbox alternative Development of map tiles that look like Google tiles 2018: Google removes Mercator view in small scale views Google still dominates
Google’s pricing 2006-2011: The use of Google Maps and the Google Maps API is free 2011-2016: Map loads limited to 25,000 a day for 90 consecutive days A map load does not include panning Very few users ever exceeded this limit 2016-2018: Map loads limited to 25,000 a day 90 consecutive days removed
Google Pricing 2018-present Google Maps Platform introduced that requires the creation of an account associated with a credit card $200 a month free credit Equates to 28,000 map loads a month (not day)! Complicated pricing on other modules: Directions, etc. Possible to limit daily map loads to 900/day and incur no cost 900/day is fine for most educational purposes / daily updating
Alternatives to Google Openlayers: Free TomTom: 2500 free a day; up to 75,000 a month MapBox: 50,000 free maps a month Mapfit: 50,000 non-commercial maps a month (2015) Here (Nokia): Free for 250,000 maps a month
In choosing an API, there are 2 decisions: The API The Tile Layer Set Leaflet Leaflet / OpenStreetMap Google Google
Formation of a Standard Map Maps on the Internet and mobile phones promote a single “map look” In the print era, it was not possible for any map provider to create a “standard” map Closest: Users of a particular atlas that would avoid using another atlas because the map design differed My Hammond atlas
Hooked-on the Google “look” Map users have become addicted to the look of a certain map Google Bing (Microsoft)
For most map users … Map users have become addicted to the look of a certain map To the point that they reject using all other maps Google Bing (Microsoft)
What to do? Create a Google look-alike, like Microsoft’s Bing new map Old Bing map New
Comparison of Bing’s new map to Google New Bing (Nokia) Google
Two decisions Most important The API The Tile Layer Set Leaflet Leaflet / OpenStreetMap Google Google
The Map (tile layer set) Choice Choose a map (tile layer) That creates a “connection” with map users Users shouldn’t need to negotiate a new map design every time they use a map
Other factors A fast map In evaluating all of the factors associated with improving interaction with the Internet map, the single most important is the speed of map display. In the world of cloud mapping, a fast map is a good map. Mapping in the Cloud (2014)
Speed dependent on a variety of factors Speed of network Browser Significant differences in JavaScript execution speed: 1. Safari, 2. Chrome, 3. Opera, 4. Firefox. Last: Microsoft Number and sophistication of data centers
Google data center Eemshaven, Netherlands
Other factors Completeness of underlying vector database Which map provider has the most features Study based on a pair-wise comparison between Google and OpenStreetMap
Pairwise comparison at the 18th zoom level Random location in North America Google Maps OpenStreetMap
100 random locations in US and Europe Google had more features and more labeled features in the North America OpenStreetMap and more features and more labeled features in Europe
Other factors Projection Zooming-out to a non-Mercator Projection Mercator projection has severe area distortion
This view of world should not be used. Mercator projection This view of world should not be used. OpenStreetMap
This view of world should not be used. Mercator projection This view of world should not be used. Mollweide Equal Area Projection OpenStreetMap
Azimuthal Perspective projection used by Google since August 2018 – desktop only Google responsible for re-introducing Mercator projection with Google Maps in 2005. All other online map providers copied Google’s tile-based method and still use the Mercator projection.
Concluding Remarks The tile-based map delivery approach is the major way that maps are distributed and used The multi-scale panable (MSP) method is synonymous with what most people think maps should be MSP map = Map To most users, all other maps are like MLAs (map-like artifacts) Have some map-like characteristics but aren’t maps
Standard Map MSP maps are rendered (designed) differently from an underlying vector database Pedantic argument about which is the best design Use of colors Symbolization of features The best design is the one that most people use because it’s what they are used to
APIs Some APIs are tied to a particular tile-layer set Most commercial APIs use only their own tile-layer set Open-source can use APIs use tiles from different providers Leaflet API does not have it’s own tile layer set Can use most any tile layer set But, if you don’t have your own tile layer set, it could disappear
Commercial providers Charge for use of the tiles, not the API code You still pay to use commercial tiles with an open source API such as Leaflet Same price as using the Google Maps API Commercial provider could restrict access to tiles from other APIs Probably wouldn’t if you are paying for use of the tiles
Future Base maps will continue to be maps from data centers The best and most accepted maps will be those that are delivered the fastest and are used by the most users The struggle between commercial and open source will continue Commercial map providers will always be better funded This funding will help improve the speed of map distribution
Overcoming dominance of Google Maps Develop a faster way to deliver online maps Make it available on multiple platforms Create a more complete base map Devise a better navigation system Then, wait about four years The time it took Google to achieve dominance over MapQuest