Hi,
GIF shows interactive Plotly chart with intervals displayed on route profile. This is a bit old code and i didn't finish it. So it might not work for all activities. But based on my testing it works for my workouts with GPX files and Virtual rides (videos).
It does not work for my runs. Don't have time to work on it at the moment. But it might be good starting point, if anyone wants to improve / fix anything that does not work.
If you click on activity without altitude data, it displays "This is Route profile (altitude) chart. Selected activity does not contain any altitude data."
You can see it in GIF.
At the very bottom it shows "legend" with all intervals / efforts, climbs that are logged in selected activity.
If all intervals / efforts, climbs are displayed (on chart), you can double click on specific effort / climb in legend. And it will hide all, except the one you double clicked. To show all again, you double click the same legend effort / climb again.
You also have few buttons at the top of the chart.
Route profile is colored based on slope.
Green dot = start of interval / effort, climb
Red dot = end of interval / effort, climb
Red dot is "shifted" to the left side of profile, so it doesn't get covered by some other starting point (green dot)
And there are few dots above X axis, which show a bit of extra data.
Attached .txt file with python code.Cheers,
Mitja