我正在使用 series[0].setData()
函数使用按钮更改 High Charts
图表上的系列。它确实更改了数据并更新了图表,但是当我尝试使用第二个按钮来重置我的后台数据时,似乎什么也没有发生。为什么系列
只能更新一次?
$('#button').click(function() {
chart.series[0].setData(mydata1);
});
编辑:
仍在寻找答案,但一个简单的解决方法是让按钮首先使用 chart.destroy();
,然后重新创建一个全新的图表。
最佳答案
问题在于,在首次创建图表时,数组/对象是通过引用传递的。之后,High Charts 似乎只更新现有对象,覆盖原始对象。尝试下面的jsfiddle。我首先使用空对象创建图表。然后按钮就会按预期工作。
var emptyData = [{},{},{}];
$(document).ready(function() {
chart = new Highcharts.Chart({
chart: {
renderTo: 'container',
backgroundColor: null,
type: 'treemap'
},
series: [{
type: "treemap",
layoutAlgorithm: 'squarified',
alternateStartingDirection: true
}],
title: {
text: 'Fruit consumption'
}
});
chart.series[0].setData(emptyData);
});
关于javascript - Highcharts SetData 只能工作一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39252270/