我正在尝试使用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
答案 0 :(得分:3)
setData是一个函数,您必须将其称为:
this.series[0].setData(cumcum(jsonResponse["values"])
有关详细信息,请参阅API http://api.highcharts.com/highstock#Series。