Visualising geospatial data

Geographic information systems

The particular pitfalls of data visualisation for geographic mapping. Cartography, with data.

GIS systems

Geographic Information systems are the spreadsheets of map data.

ESRI ArcGIS is the classic commercial geographic information system. QGIS project! is the flagship open source alternative. Its interesting feature is that is supports python scripting.


There are a variety of map systems which will produce javascript visualisation of map data. The easiest way to interact with most of these is to encode data as the boring data standard GeoJSON. (Maybe see a more casual introduction if you are interested in that.) There is another standard called TopJSON which I know nothing about.

Various providers give us map data: OpenStreetMap, Mapbox, Stamen or Thunderforest)


Leaflet is the leading open-source JavaScript library for mobile-friendly interactive maps. Weighing just about 39 KB of JS, it has all the mapping features most developers ever need.

Leaflet is designed with simplicity, performance and usability in mind. It works efficiently across all major desktop and mobile platforms, can be extended with lots of plugins, has a beautiful, easy to use and well-documented API and a simple, readable source code that is a joy to contribute to.

Leaflet uses the OpenStreetMaps database which is very good. It is lacking some of the integrations that Google Maps has, but also some of the horrible spyware.

Google maps

A classic browser interactive mapping provider. The usual caveats about google apply. For our purposes the important thing is that we can create a Data layer which plots for quantitative data visualisation.


Plotly is not a mapping library but it will plot maps happily as part of other plots.

e.g. Kerry Halupka notes How to create maps in Plotly with non-US locations.


I am not sure about the options here, but probably GeoJSON export and javascript visualisation sia good idea. For example, create your geographic visualisations using python + leaflet.js javascript maps using folium.

Mapping non-geospatial things

Using maps as visualisations of non geospatial things is a whole other field. What if you can leverage spatial intuition by pretending something is spatial? e.g., as mentioned at knowledge topology, Franka Miriam Brückler’s famous map of Middle Math.

Franka Miriam Brückler’s famous map of Middle Math

That sounds fun and I'm sure it is studied elsewhere.

Warning! Experimental comments system! If is does not work for you, let me know via the contact form.

No comments yet!

GitHub-flavored Markdown & a sane subset of HTML is supported.