Last updated February 19, 2015. Created on July 30, 2012.
Edited by mogtofu33, kalinchernev, Satraa, hutch. Log in to edit this page.

This page aims to provide developers and site builders some navigation on the sea of options for the mapping of location data sets in Drupal D7. This is by no means an extensive survey. The idea is that by listing a number of the most popular modules side by side with their features, it will make it easier for the reader to shortlist modules for their specific needs before examining details on the various project and documentation pages.

In general you'll need at least two modules to create maps from location data: one to provide a location data storage facility and one to render the locations as markers on a map.

Examples of location storage modules are: Location, Geofield and Geolocation field and Get Locations.

Additionally, while the table below indicates required location storage methods (such as "Geofield" for "Leaflets"), it is in fact possible to deploy a module such as Geocoder to, for example, use Location as a storage method for Leaflet or OpenLayers.

Examples of map rendering modules are: IP Geolocation Views and Maps, GMap, Get Locations, OpenLayers and Leaflet. We've used these map renderers as the main index into the comparison table below (first row).

Some of the location storage modules come with map renderers built in, although these are generally for a single location only, e.g. when viewing a node (example: Geolocation field). Geofield and Get Locations have their own Google Maps v3 interfaces to produce maps containing multiple location markers.

There is another related comparison page on geo module at Geospatial Modules Assessment.

Please edit this page if you find inaccuracies or want to add mapping modules or features to the list.

Mapping module IP Geolocation Views and Maps GMap Get Locations OpenLayers Leaflet
Supported location storage modules Geofield
Geolocation field
Get Locations
Location
any contrib module
Location Geofield
Geolocation field
Get Locations
Geofield, PostGIS Geofield
Maps generated from access log,
views with any lat-long field
nodes & user accounts,
views with Location module fields
nodes & user accounts,
views with Getlocations_fields field, Geolocation Field or Geofield fields
views with Geofield fields views with Geofield fields
Supported map providers Google Maps v3, many others via its OpenLayers and Leaflet More Maps interfaces Google Maps v2, Google Maps v3 (development release) Google Maps v3, Leaflet, Openlayers many defaults to OSM Mapnik, many more via Leaflet More Maps
Dependencies & libraries to download Views (Views) Libraries, marker image library, (Views) Views, Proj4js, (Libraries) Libraries, Leaflet library, Views
Availability D7 D6, D7 D6, D7 D6, D7 D7
Display visitor marker amongst data locations yes, with color configurable on all 3 map renderers no yes no no
Map centering options o fixed point
o visitor's HTML5 location
o 1st location from view
o center of gravity
o location of node arg. o configurable o fixed point
o visitor's HTML5 location
no
Configurable marker balloon texts yes, any fields from view yes, any fields from view yes, defaults to address or field from view yes, any fields from view yes, either one or all fields from view
Marker colors by taxonomy yes, on all 3 map renderers yes yes yes via OpenLayers Taxonomy no
Marker colors by any Views field yes, on all 3 map renderers yes no no no
Other module integrations Commerce, Leaflet MarkerCluster Colorbox, jquery_colorpicker, Smart IP, Countries many, see project page Leaflet MarkerCluster
Comments easy to use, OpenLayers interface much simplified compared to original. "GMap is considered a legacy module" (project page) easy to use, many config options many canvases to choose from; hard to use at first but very flexible, see this tutorial. Works well on mobile. easy to use, few config options, colors etc. though Leaflet Moremaps adds to choices. Strong fit for mobile, very lightweight.

Looking for support? Visit the Drupal.org forums, or join #drupal-support in IRC.

Comments

mjross’s picture

The information on this page is quite helpful, and would be even more so – for the relevant use cases – if it had an additional row of data showing which of the solutions support proximity search, i.e., listing those locations within a given distance of a given location.

dasjo’s picture

also see Drupal Mapping Diagrams
https://www.drupal.org/node/1807358

milos.kroulik’s picture

Having 2 comparison tables seems like a waste of time to me. Shouldn't we agree on one of them and link it form the other place? Also, the layout of page causes table clip - there should be some work-around, at least until https://www.drupal.org/node/2225355 gets fixed.