Was muss ich ergänzen, damit die Prozentwerte in 5-er Schritten ausgewählt werden können?
Sie sollten die "Differenzierung" in der Frage so anpassen, dass Sie die passende Anzahl Schritte haben, sonst ärgern Sie sich in der Auswertung. Ich komme auf -100% bis -5% = 20 Schritte, rechts dasselbe und dann noch die 0, macht also eine Differenzierung von 1 bis 41.
Und die Formel wäre dann entsprehend:
var text = ((value - 21) / 20 * 100).toFixed(0) + "%";
Gut die Division/Multiplikation können wir noch vereinfachen, dann ist auch klar, wo die 5 herkommt:
var text = ((value - 21) * 5).toFixed(0) + "%";
Jetzt wollen wir aber nur die ganzen/gerundeten Werte nehmen, das bekommen wir, indem wir ein Math.round
direkt auf das value
anwenden
var text = ((Math.round(value) - 21) * 5).toFixed(0) + "%";
Wenn Ihnen das Plus jetzt noch wichtig wäre...
var text = ((Math.round(value) - 21) * 5).toFixed(0) + "%";
if (value > 21) {
text = "+" + text;
}