更新Highchart数据表单导出按钮

时间:2013-08-15 13:00:15

标签: javascript jquery highcharts

我正在尝试使用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].yDataseries[0].processedYData

1 个答案:

答案 0 :(得分:3)

setData是一个函数,您必须将其称为:

this.series[0].setData(cumcum(jsonResponse["values"])

有关详细信息,请参阅API http://api.highcharts.com/highstock#Series