I am generating elevation profile graphs from hiking trails (GeoJSON). Use as maximum and minimum values of the Y axis the value of the maximum altitude and the minimum altitude of the route. The problem is that when the unevenness of the route is very small, for example, 100 meters, the curve of the graph is so pronounced that it produces the misleading effect of being on a path with a much higher elevation than it really is. This is solved by increasing the maximum value of the Y axis (for example + 100m).

I would like to find a way to represent the elevation profile more realistically, giving the user a view of the real difficulty depending on the slope of the route.

  • 1
    Which software/platform do/did you use? Oct 18, 2022 at 10:22
  • We are developing map features with leaflet on a joomla project, JS and PHP, with some functions like komoot, strava, wikiloc,.... The main thing is that also that platforms give users not reallystic information on track elevation profiles, so we try to improve this problem. Oct 19, 2022 at 18:34

1 Answer 1


We are doing quite the same (minHeight - 100 and maxHeight + 100) if you want to do it more precisely on every given Dataset I would work with percentages and min fixed values:

minHeight - max(100, maxHeight - minHeight * 20%) 

Other than that, there is no way to present the data in a non-misleading way. You will always have either a huge graph where quite even routes are hard to read (setting fixed min and max with huge difference, like min -10000 and max 100000) or small graphs where little changes look like they are big ( min = minRoute and max = maxRoute)

You can only try to find settings where the bigger amount of your data looks ok and some edge cases look weird.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.