Pytrainer is a desktop application for logging and graphing sporting activities such as running or cycling sessions. Data can be imported from GPS devices, files or input manually. Currently pytrainer supports GPX, TCX and FIT files.
Works well with my Garmin Forerunner 305 with heart rate monitor using Garmin Tools. Takes a long while to load but otherwise really good. There is nothing like being able to beat your last time or distance to spur you on!