Tom MacWright

tom@macwright.com

Printed running map

Mapping my runs, version 3

Run

Running the Jingle all the Way 8k

Ideally a lot, but typically less than you hope to


Record runs with a watch

My Running Gear

I use a TomTom Runner GPS, which has been discontinued and replaced with the Spark which adds, for some reason, an MP3 player. The Forerunner 230 is probably better. I have a Polar watch sitting in storage because I couldn’t get my data out.

The Apple Watch and other newfangled watches are fancier but most rely on your phone’s GPS. No phones on runs.


Sync your runs with tapiriik

Tapiriik is one of the best websites on the internet: you connect services and it just works. I upload runs from my watch to my iPhone with Bluetooth to TomTom MySports. MySports is, like other vendor-specific sites, junk, but that doesn’t matter: Tapiriik syncs to Strava, the best site for sharing runs, and saves my runs as raw TCX data to Dropbox.


Strategize coverage with the Strava heatmap

My Strava Heatmap

I use Strava Premium to get the heatmaps: I regenerate a heatmap of all roads run before some training runs to find places I haven’t been yet. A dense city like Washington, DC has 1,500 miles of roads and it can take months to finish even a few blocks.

I track overall statistics with CityStrides, a site that tells me that I’ve run 12% of DC.


Convert TCX files in your Dropbox into a big GeoJSON file with tcx

$ npm install -g tcx
$ cd Dropbox/Apps/tapirrik
$ tcx *.tcx > all_runs.geojson

TCX is kind of a popular file format but not popular enough to be supported in OGR, the swiss army knife of converters. So I wrote a converter that takes one or more TCX files and generates GeoJSON. GeoJSON is accepted everywhere.


Upload GeoJSON to Mapbox and design a map with it

This is the fun part. It’s the hard part for me. But the goal is a simple map, so I use only a handful of layers - runs, water, background. No map labels.


Export the map as a static image

This uses the new image export functionality in Mapbox Studio. The maximum resolution I can get from Studio is just enough to make this poster look good.


Make a poster

I made an 11x17 print with shortrunposters.com. The minimum resolution is 1650x2550. At first glance, it might seem like Mapbox can’t create a large enough image, but the Retina option doubles output size. So I chose 825x1275 as the output size. There’s also the little hiccup that shortrunposters wanted a TIFF file, and Mapbox produces a PNG. This is also easy to fix - I used Acorn to convert the image, and most any image editor can do the same.

Here’s the raw image used for the poster: the only map layers are water (to show DC’s outline) and runs. It doesn’t include road data.

See also