我正在使用按钮使用High Charts
功能更改series[0].setData()
图表上的系列。它确实会更改数据并更新图表,但是当我尝试使用第二个按钮重置我的后台数据时,似乎什么都没发生。为什么Series
只能更新一次?
$('#button').click(function() {
chart.series[0].setData(mydata1);
});
编辑:
仍在寻找答案,但一个简单的解决方法是先让按钮使用chart.destroy();
,然后重新创建一个全新的图表。
答案 0 :(得分:2)
问题是在首次创建图表时,数组/对象是通过引用传递的。之后,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);
});