【发布时间】:2012-12-15 12:27:44
【问题描述】:
我很难理解更新 highcharts 图表的正确方法。假设我已经渲染了一个图表,然后我想以某种方式更新它。例如,我可能想要更改数据系列的值,或者我可能想要启用 dataLabels。
目前我能弄清楚如何做到这一点的唯一方法是更改图表选项,并使用new Highcharts.chart 告诉 highcharts 重绘。
但是,我想知道这是否有点矫枉过正,并且有可能“原位”更改图表,而不必从头开始使用new Highcharts.chart。我注意到有一个 redraw() 方法,但我似乎无法让它工作。
非常感谢任何帮助。
谢谢,
罗宾
示例代码如下,底部有一个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();
});
[编辑]:
对于这个问题的任何未来观众,值得注意的是没有隐藏和显示数据标签的方法。下面展示了如何做到这一点:http://jsfiddle.net/supertrue/tCF8Y/
【问题讨论】:
-
显示/隐藏 dataLabels 示例的链接需要更新其 HighCharts 源 URL(它是 404ing),并且需要更新 jQuery。我已经在jsfiddle.net/supertrue/tCF8Y
标签: javascript highcharts