Ich habe Probleme zu verstehen, wie ein Highcharts-Diagramm richtig aktualisiert werden kann. Angenommen, ich habe ein Diagramm gerendert und möchte es dann auf irgendeine Weise aktualisieren. Beispielsweise möchte ich möglicherweise die Werte der Datenreihe ändern oder dataLabels aktivieren.
Im Moment kann ich nur herausfinden, wie das geht new Highcharts.chart
, indem ich die Diagrammoptionen ändere und Highcharts anweise, sie neu zu zeichnen.
Ich frage mich jedoch, ob dies möglicherweise ein Overkill ist und es möglich sein könnte, das Diagramm "in situ" zu ändern, ohne von vorne anfangen zu müssen new Highcharts.chart
. Ich stelle fest, dass es eine redraw()
Methode gibt, aber ich kann sie scheinbar nicht zum Laufen bringen.
Jede Hilfe wird sehr geschätzt.
Vielen Dank,
Robin
Der Beispielcode lautet wie folgt und unten befindet sich eine jsFiddle
$(document).ready(function() {
chartOptions = {
chart: {
renderTo: 'container',
type: 'area',
},
series: [{
data: [1,2,3]
}]
};
chart1 = new Highcharts.Chart(chartOptions);
chartOptions.series[0].data= [10,5,2];
chart1 = new Highcharts.Chart(chartOptions);
//The following seems to have no effect
chart1.series[0].data = [2,4,4];
chart1.redraw();
});
[bearbeiten]:
Für zukünftige Betrachter dieser Frage ist es erwähnenswert, dass es keine Methode zum Ausblenden und Anzeigen von dataLabels gibt. Das Folgende zeigt, wie es geht: http://jsfiddle.net/supertrue/tCF8Y/