A Leaflet and Heightgraph based app running in the browser. You can upload a GPX or KML track, which gets rendered on the Leaflet map, and its elevation profile plotted in Heightgraph. From there, you can print the map with the track on, or the elevation profile.
The application is running at https://alexcojocaru.github.io/elevation-profile/.