[Ellie: plot elevation]

Ellie: plot elevation from a GPS track

There are lots of ways, mostly related to the Open Street Map project, to display GPS data on Linux. But none of them display elevation. I like being able to track how much I climbed on a hike or bike ride.

So I wrote a little Python script which I'm calling ellie. It parses track log files, in gpx format, and gives you a graph and a few statistics.

It uses pylab for plotting, which uses matplotlib; you'll need the python-matplotlib package installed (or its equivalent) to see the graphs. New in 0.3: ellie can print stats on total climb, distance traveled, moving time and stopped time even if pylab isn't installed.

Ellie has since been merged into my more general mapping program PyTopo: it's the file pytopo/trackstats.py in that module, runnable as ellie if you install it from the Python Package Index.


ellie tracklog.gpx It can currently plot only one track log at a time (is there much need to do more?)

Screen shot

[Ellie screenshot]

Known Bugs

I've tried my best to smooth the elevation data for the "Total climb" number. It probably won't quite agree with whatever other program you use; but then, no two mapping programs ever agree on total climb, since it depends on how much you smooth it.

Similarly with total mileage. I think Ellie tends to over-estimate slightly, and doesn't do as good a job with smoothing as it does in the elevation case, but it's at least close.

Ellie's plot sometimes ends up at a different elevation than it started, even when you start and end at the same place. I think that's usually due to differences in barometric pressure between the start and end of the journey; if you have a case where you see a difference that doesn't correspond to what's in your actual track log, please send me the track log to debug.


8/31/2014, 0.4:
Use Kaiser window smoothing to try to make the total climb numbers more sensible.
10/30/2010, 0.3:
Give an estimate for total distance traveled, moving time and stopped time; if pylab isn't installed so we can't plot, print the stats anyway.
3/18/2009, 0.2:
Fixed meters/feet confusion. Smarter total climb code: don't count little blips like taking the GPS out of its case to read it.
First release.

PyTopo: Navigate tiled maps on or offline
More Software
Shallowsky Home
mail me