Map of the Week: Here Be Dragons, or How to Make Adventure Maps

Summary

Modern-day expeditions to life with custom real-time tracking maps. Experience the narratives of post-modern pioneers in this epic adventure mapping!

This post may describe functionality for an old version of CARTO. Find out about the latest and cloud-native version here.
Map of the Week: Here Be Dragons, or How to Make Adventure Maps

When we talk about maps in our present  we often forget the intrepid legacy of mapmaking in our past. Some subtle reminders of the struggles behind our geographic sensitivities still hold strong; names like "Mercator" and "Coronelli" echo in our projections and account plans at CartoDB  but rarely do contemporary cartographers think about our own maps as being particularly pioneering  or the product of an adventure.


   

Sea Monsters Oh my!



This week's featured mapper still holds to the epicness of exploratory maps. Anthony Goddard runs a small project called ZeroSixZero  which builds custom realtime tracking maps for expeditions and adventurers. Read on to learn how he makes maps that track the trails of post-modern pioneers!

We forget with the navigatory-ease of slippy maps that the making of a mappa mundi was once a non-trivial operation  requiring exploration and often adventure. Do we remember a time when sea monsters marked coordinates of whole continents? Not really. Or can we recall a time when frontiers were defined not only by political imposition  but by the mythology of a terra incognita? Unlikely. But can we comprehend the epic trail of an adventure as it plots on our self-made map-sterpieces? Possibly.

That's what Anthony Goddard's work is all about  and in this week's post  we invite him to share some of the narratives he builds in maps!

London2London

In 2011  at the age of 25  Sarah Outen hopped in a kayak and began paddling down London's River Thames. There were other kayaks in the Thames that day  but whereas most people were out for a leisurely spring-time paddle  Sarah had other plans. Sarah  like the other paddlers  was paddling back to shore in London. Unlike the other paddlers  she was taking a detour first - via the rest of the world.


 

Follow the incredible journey of Sarah Outen



Odyssey

When I came across Sarah's expedition  I was blown away by the scale of it and contacted her to ask if she would be interested in sharing the data  which she kindly agreed to. I added all of Sarah's historical tracking data to CartoDB and then  data in hand  set about finding the best way to visualize it. Sarah already had a basic and functional map on her website and I didn't want to just replace that map for her  I wanted to make it way better.


 


   

Adventurers on the (Bike) Trail


 



I've worked on many maps  from Ocean rowers to record breaking athletes and even folks unicycling the world!


   



Here's another tracking Anna McNuff's [run through the length of New Zealand]:


   



Most of these maps follow a general pattern - a GPS linestring  a marker  and perhaps some statistical overlays or progress markers / popups. Sarah's expedition was so big that I didn't feel that any of these formulae could really convey the scale of it. By the start of 2015  when I began work on her map  Sarah had already cycled across Europe and Asia  rowed across the Pacific  kayaked the Aleutian Islands  and was now cycling across Noth America. As she was making her way across the country  I came across Odyssey.js  a project by CartoDB for telling interactive stories with maps  and I knew I had found my answer to Sarah's map.

The Data

I had been continually syncing data from Sarah's tracker to CartoDB  so I had all the data I needed. Sarah's journey consisted of a number of segments  and I wanted the viewer to easily differentiate between them. To do this  I added a category field for each position and  based on the timestamp of the position  allocated a route name as the category. I then used a category line style in CartoDB to render a color for each category. For the latest position  I uploaded an image of Sarah's boat which would show her on her next leg  rowing the Atlantic. With this visualization complete  I added the viz.json link to Odyssey.js and then began writing the story. Odyssey allows you to write  with simple markdown  a story with embedded coordinates  and allows the user to travel to these key places and times while reading the story.

Sarah had also been recoding "phonecast" updates on her satellite phone for the expedition  and by screen scraping data from her blog posts  and then using additional javascript in the Odyssey map  I was able to add these phonecasts as an optional layer in the map  allowing the viewer to hear what it was like along the places shown in the odyssey map  in Sarah's own voice.


   

Phonecasts with Sarah



Cartodb.js

With the challenge of showing the history of the expedition solved  I then needed to design a map to show Sarah's realtime progress on the current  final leg of her expedition. The realtime map would add things like weather overlays and additional metadata for positions along the route  as well as up to date telemetry from Sarah's tracker.


   

Live tracking with data overlays



To do this  I switched to Cartodb.js. On Sarah's tracking site  users are shown both maps  allowing them to switch between historical and realtime information. The weather overlays are provided by OpenWeatherMap and loaded using Leaflet tilelayers  and a control layer  as follows:

{% highlight js %}
 var sea_surface_pressure = L.tileLayer('http://{s}.tile.openweathermap.org/map/pressure_cntr/{z}/{x}/{y}.png'  {
   attribution: 'Map data ©
'
   opacity: '0.5'
 });

var wind = L.tileLayer('http://{s}.tile.openweathermap.org/map/wind/{z}/{x}/{y}.png'  {
   attribution: 'Map data ©
'
   opacity: '0.3'
 });

var overlayMaps = {
   "Sea Surface Pressure": sea_surface_pressure
   "Wind": wind
 };

L.control.layers(null  overlayMaps {collapsed:false}).addTo(map);
##_END_REPLACE_ME_PRE_##

Mapping Adventures

CartoDB  with tools like OdysseyJS and CartodbJS  has made it possible to build tracking maps that are highly customized for each adventure  adding data and context that previously wasn't possible with off-the-shelf tracking solutions. Oftentimes the only mechanism for people to follow expeditions is blog posts and maps. My goal with ZeroSixZero is to allow the viewer to feel as close as they can to the adventure they're following  and push the boundaries of adventure mapping.

If you'd like to view more of Anthony's maps  check out his public profile  tweet him @anthonygoddard  or contact him via ZeroSixZero.

Stay tuned for our next Map of the Week feature  and meantime happy mapping !