Ich versuche eine Mindestobergrenze festzulegen, insbesondere:
Scheint so etwas wie Highcharts, aber ich kann nicht herausfinden, wie. Hat jemand Erfahrung damit?
Highcharts scheint keine Möglichkeit zu haben, dies zur Zeit der Kartenerstellung zu tun. Allerdings stellen sie eine Reihe von Methoden zur Verfügung, um die Extreme zu hinterfragen und die Extreme, getExtremes()
und setExtremes(Number min, Number max, [Boolean redraw], [Mixed animation])
in ihren zu ändern Dokumentation .
Also eine mögliche Lösung (nach der Chart-Erstellung):
%Vor% yAxis[0]
referenziert die erste y-Achse, und ich nehme an, dass Sie in diesem Fall nur eine Achse haben. Das Dokument erläutert den Zugriff auf andere Achsen.
Das ist nicht ideal, weil das Diagramm neu gezeichnet werden muss, was nicht auffällt, aber es ist immer noch da. Hoffentlich konnte Highcharts diese Funktionalität in die Optionen integrieren.
Eine Möglichkeit, dies nur mithilfe von Optionen (keine Ereignisse oder Funktionen) zu tun, ist:
%Vor% Hier definiert minRange
die Mindestspanne der Achse. maxPadding
ist standardmäßig auf 0.01 gesetzt, was die Achse länger als 10 machen würde, also setzen wir sie stattdessen auf 0.
Dies ergibt die gleichen Ergebnisse wie ein setExtreme
ergeben würde. Siehe diese JSFiddle-Demonstration .
Hinzufügen zu Julian Ds sehr gute Antwort , das folgende vermeidet ein mögliches Problem der Neupositionierung, wenn Ihr berechneter Max in der Anzahl der Ziffern bis zu Ihrer gewünschten oberen Grenze variiert.
In meinem Fall hatte ich prozentuelle Daten, die gerade in die 20er gehen, aber ich wollte einen Bereich von 0 bis mindestens 100, mit der Möglichkeit, über 100 zu gehen, wenn es erforderlich ist, so dass die folgenden Sätze min & amp; max im Code, wenn dataMax höher ist, wird max bis zu seinem Wert neu zugewiesen. Dies bedeutet, dass die Graph-Positionierung immer mit ausreichend Platz für 3-stellige Werte berechnet wird, anstatt für 2-stellige Werte, dann gebrochen durch Drücken von "100", aber bis "999", bevor es als nächstes ein Problem geben würde. p> %Vor%
HigtCharts hat eine wirklich gute Dokumentation aller Methoden mit Beispielen.
In deinem Fall denke ich, du solltest die "min" und "max" Eigenschaften von "yAxis" haben.
min: Nummer Der Mindestwert der Achse. Wenn Null, wird der Min-Wert automatisch berechnet. Wenn die startOnTick-Option wahr ist, wird der min-Wert möglicherweise abgerundet. Der Standardwert ist null.
max: Anzahl Der maximale Wert der Achse. Wenn null, wird der Maximalwert automatisch berechnet. Wenn die endOnTick-Option wahr ist, kann der max-Wert aufgerundet werden. Der tatsächliche Maximalwert wird auch von chart.alignTicks beeinflusst. Der Standardwert ist null.
Wenn Sie Ihr Diagramm dynamisch erstellen, sollten Sie
festlegenmin = 0 max = 10, wenn alle Datenwerte kleiner als 10 sind
und
nur min = 0, wenn der Wert größer als 10 ist
Viel Glück.
Versuchen Sie, den Minimalwert der Achse und das Intervall der Teilstriche in Achseneinheiten wie folgt einzustellen:
%Vor%Vergessen Sie auch nicht den Maximalwert einzustellen.
Ich hoffe, das hilft.
Tags und Links javascript highcharts