January 3rd, 2013 |
Last January, I plotted a representative selection of my road bike rides from 2011 using TileMill, the TIGER map data from the US Census Bureau, and exported activity routes from RunKeeper.
This year, I’ve improved the process somewhat, and I mapped my 2012 rides last night. I used the OpenStreetMap data in a PostGIS database to get information about streets, lakes, and cities (oddly, the OpenStreetMap extract for Wisconsin doesn’t seem to have city information for Madison), and I post-processed 196 RunKeeper activities into a single GPS track so that I didn’t have to manually enter each one as a new layer. With my sincerest apologies to some very nice rides in Iowa and Minnesota, I cropped the map to show only the area around Madison where I rode most frequently:
(Click the above to have the map fill your browser window, or click here to see it at full size.)
Readers familiar with southern Wisconsin cycling may recognize some of these routes: the main constellation of routes extends from the Horribly Hilly Hundreds 100k route on the west to the Capital City Loop on the east and from Lodi in the north to New Glarus in the south. The disjoint route in the north is the Tower Tour (my first-ever road race; I earned the lanterne rouge); the disjoint route to the west is the Dairyland Dare 100k route.
I would still like to improve the way I visualize route and point density. Currently, each activity’s track is painted as a thick line with 15% opacity. This is straightforward and unsophisticated, and the 15% opacity makes one-time routes visible and makes routes that I rode n times easily distinguishable from those I rode n + 1 times, at least for small values of n. Unfortunately, this method is coarse enough so that common routes become saturated fairly quickly.