blankblank blank




Web App For Analyzing GPS Tracks



Peter Vojtek has a new web app online called AnalyzeMyTrack! that lets you analyze your GPS track files (in GPX format). Upload the GPX file, and get back:

- An interactive graph of speed vs. distance

8-10-2008-8.29.28 PM

- Interactive altitude profile as a function of distance

8-10-2008-8.28.59 PM

- A “Basic Analysis” of the track stats, with the option to plot the position with the highest speed in Google Maps

8-10-2008-8.33.51 PM

- A lookup of the closest geographic features to points in the track using the Geonames server

- Supposedly also the ability to add your GPX track to your Google Maps MyMaps page, but I was unable to get that to work, at least in Firefox 3

Related posts:

  1. The Geonames.org Geocoding Database
  2. Reverse Address Geocoding With Google Maps
  3. MapMyRide.com
  4. Plot Gazetteer Features In A Google Maps Interface
  5. Another Google Maps Geocoder/Reverse Geocoder
  6. Worldwide Reverse Geocoding With Google Maps
  7. Mini Map Sidebar Firefox Extension
  8. Creating GPS Waypoints Online From The USGS Geographic Names Information System (GNIS)
  9. Worldwide Demographic Data With StatPlanet
  10. KML Interactive Sampler

Looking for something else? Enter some keywords below, then click "Search".    




2 Responses to “Web App For Analyzing GPS Tracks”


  1. 1 TD

    I attempted to use this with a small trackline (500 points) uploaded from Garmin Mapsource, but it returns a page error in Firefox 3, and the following error in IE7.

    ————————————–

    NoMethodError in GeoController#result
    You have a nil object when you didn’t expect it!
    The error occurred while evaluating nil.elevation
    RAILS_ROOT: /home1/mytrackn/rails/gpx2

    Application Trace | Framework Trace | Full Trace
    app/controllers/geologic/track.rb:132:in `computeElevations’
    app/controllers/geologic/gpx_parser.rb:62:in `advancedResultLayout’
    app/controllers/geo_controller.rb:36:in `result’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/base.rb:1162:in `send’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/base.rb:1162:in `perform_action_without_filters’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/filters.rb:580:in `call_filters’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/filters.rb:573:in `perform_action_without_benchmark’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/benchmarking.rb:68:in `perform_action_without_rescue’
    /usr/lib/ruby/1.8/benchmark.rb:293:in `measure’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/benchmarking.rb:68:in `perform_action_without_rescue’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/rescue.rb:201:in `perform_action’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/base.rb:529:in `send’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/base.rb:529:in `process_without_filters’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/filters.rb:569:in `process_without_session_management_support’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/session_management.rb:130:in `process’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/base.rb:389:in `process’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/dispatcher.rb:149:in `handle_request’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/dispatcher.rb:107:in `dispatch’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/dispatcher.rb:104:in `synchronize’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/dispatcher.rb:104:in `dispatch’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/dispatcher.rb:120:in `dispatch_cgi’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/dispatcher.rb:35:in `dispatch’
    dispatch.cgi:10
    app/controllers/geologic/track.rb:132:in `computeElevations’
    app/controllers/geologic/gpx_parser.rb:62:in `advancedResultLayout’
    app/controllers/geo_controller.rb:36:in `result’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/base.rb:1162:in `send’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/base.rb:1162:in `perform_action_without_filters’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/filters.rb:580:in `call_filters’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/filters.rb:573:in `perform_action_without_benchmark’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/benchmarking.rb:68:in `perform_action_without_rescue’
    /usr/lib/ruby/1.8/benchmark.rb:293:in `measure’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/benchmarking.rb:68:in `perform_action_without_rescue’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/rescue.rb:201:in `perform_action’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/base.rb:529:in `send’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/base.rb:529:in `process_without_filters’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/filters.rb:569:in `process_without_session_management_support’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/session_management.rb:130:in `process’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/base.rb:389:in `process’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/dispatcher.rb:149:in `handle_request’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/dispatcher.rb:107:in `dispatch’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/dispatcher.rb:104:in `synchronize’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/dispatcher.rb:104:in `dispatch’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/dispatcher.rb:120:in `dispatch_cgi’
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.1.0/lib/action_controller/dispatcher.rb:35:in `dispatch’
    dispatch.cgi:10
    Request
    Parameters:

    {“commit”=>”Process!”,
    “authenticity_token”=>”0d69242fcb508465f9a8fa9ead5c90f4ee48ece6″,
    “country”=>”United States of America”,
    “upload”=>{“datafile”=>#},
    “precision”=>”0.25 km”}

    Show session dump


    :csrf_id: 338719a72d7d148639da8d351a465608
    flash: !map:ActionController::Flash::FlashHash {}

    Response
    Headers:

    {“cookie”=>[],
    “Cache-Control”=>”no-cache”}

  2. 2 Henrik

    Same experience some author of this blog. Looks good, but should have filtered out error max speed (650km/h is not real), other analyze tool do this. Doesn’t say if speed is calculated included stopped time or not. But in general, great!

Comments are currently closed; feel free to contact me with questions/issues.