According to the help button on the cadence graph, the colors are based on comparisons to other runners, by percentile. I have two suggestions for improving the colors of the dots. The idea is that the color assigned to a percentile don't have to cover a specific cadence range, since the cadence for a percentile can change with circumstances.
Suggestion 1: Runner cadence will naturally slow going up hills. Change the color to reflect this. For example, on a flat level surface, green represents 30 to 69 percentile, or 164 to 173 spm. But, going up a steep hill, the runner's cadence might drop to 124 spm, in the bottom 5 percentile. But, if other runners going up a hill with a similar grade are in the 30 to 69 percentile at 124 spm, the dot should stay green.
Suggestion 2: Have strides per minute percentiles ranges adjusted for age. The average 70 year old runner might naturally have a slower spm than the average 23 year old runner.