Automatische Neuskalierung der Y-Achse in Google Visualization API / Kommentierte Time Line
-
20-09-2019 - |
Frage
Gibt es eine Möglichkeit, die Kommentierte Zeitliniendiagramm automatisch ändert Skala auf der Y-Achse, wenn der Benutzer zoomt auf einer Reihe von Daten zu zwingen?
Überprüfen Beispiel unten, und beachten Sie, dass der Wert ( „Preis“) für 2009-10-09 beträgt etwa zwei Größenordnungen größer als die anderen Werte. Wenn der Benutzer zoomt auf z.B. 2009-10-01 - 2009-10-08 ist die Y-Achse unverändert (die Kurve ziemlich nutzlos). Gibt es eine Möglichkeit, automatisch neu skaliert die Y-Achse, so dass in diesem Beispiel ist es von 0 bis 25 oder etwas mehr zumutbar ist (und dann natürlich wieder auf den Standard, wenn der Benutzer zoomt) reichen würde?
Beispiel: http://jsbin.com/ifogo
Beispiel-Code (die gleiche wie in obigem Link):
<script src="http://www.google.com/jsapi"></script>
<div id="visualization" style="width: 800px; height: 400px;"></div>
<script>
google.load('visualization', '1', {packages: ['annotatedtimeline' ]});
function drawVisualization() {
var data = new google.visualization.DataTable({
cols: [{label: 'Date', type: 'date'}, {label: 'Price', type: 'number'}],
rows: [
{ c:[{v: new Date(2009, 10, 1) }, {v: 11 }]},
{ c:[{v: new Date(2009, 10, 2) }, {v: 12 }]},
{ c:[{v: new Date(2009, 10, 3) }, {v: 13 }]},
{ c:[{v: new Date(2009, 10, 4) }, {v: 11 }]},
{ c:[{v: new Date(2009, 10, 5) }, {v: 10 }]},
{ c:[{v: new Date(2009, 10, 6) }, {v: 16 }]},
{ c:[{v: new Date(2009, 10, 7) }, {v: 22 }]},
{ c:[{v: new Date(2009, 10, 8) }, {v: 12 }]},
{ c:[{v: new Date(2009, 10, 9) }, {v: 999 }]},
]},0.6);
var annotatedtimeline = new google.visualization.AnnotatedTimeLine(document.getElementById('visualization'));
annotatedtimeline.draw(data);
}
google.setOnLoadCallback(drawVisualization);
</script>
Lösung
Versuchen Sie es mit
annotatedtimeline.draw(data, {scaleType: 'maximized'});
Google-Seite auf dieser Visualisierung zeigt die verschiedenen Möglichkeiten Sie verwenden können.