我正在尝试使用 exporting
选项添加一个按钮,然后使用该按钮在带有实点的折线图和带有它们的累计总和的折线图之间切换。
我正在使用以下代码:
$(function () {
$('#container').highcharts({
chart: {
type: 'line'
},
xAxis: {
tickPixelInterval: 200,
categories: jsonResponse["Date"]
},
series: {
data: jsonResponse["values"]
},
exporting: {
buttons: {
'myButton': {
_id: 'myButton',
symbol: 'diamond',
text: 'Cumulative',
x: -62,
symbolFill: '#B5C9DF',
hoverSymbolFill: '#779ABF',
onclick: function() {
if(!cumulative){
this.series[0].setData = cumcum(jsonResponse["values"]);
alert(this.series[1].setData);
cumulative = true;
} else {
this.series[0].setData = jsonResponse["values"];
cumulative = false;
alert(this.series[1].setData);
}
},
_titleKey: "myButtonTitle"
}
}
}
});
});
function cumcum(data){
var res = new Array();
res[0] = data[0];
for(var i=1; i<data.length; i++) {
res[i] = res[i-1] + data[i];
}
return res;
}
从 alert
我可以看到数据计算正确,但绘图保持不变。
我还尝试了 series[0].yData
和 series[0].processedYData
最佳答案
setData 是一个函数,你必须这样调用它:
this.series[0].setData(cumcum(jsonResponse["values"])
参见 API http://api.highcharts.com/highstock#Series获取更多信息。
关于javascript - 更新 Highchart 数据表单导出按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18253151/