2014-09-24 134 views
0

我有几个阵列的数据,我想添加到高图系列。当添加第二个或第三个数组得到一个错误或setData未定义。第一个系列绘制正确。Highcharts多个数据系列

  $('#container').highcharts({ 
      chart: {}, 
      series: [{ 
       data:[] 
      }] 
     }); 



     function showChart() { 

     var series1 = [1, 52, 5, 98, 5, 929, 1, 9, 48]; 
     var series2 = [1, 92, 35, 8, 25, 729, 61, 29, 38]; 
     var series3 = [1, 59, 75, 26, 25, 829, 11, 19, 48]; 

     var mySeries = []; 

     var chart = $('#container').highcharts(); 

     chart.series[0].setData(series1); 
     chart.series[1].setData(series2); 
     chart.series[2].setData(series3); 
     chart.redraw(); 

    }//end show chart 

回答

2

您正在initally创建图表与这里单个空白系列:

series: [{ 
    data:[] 
}] 

chart.series[1](第二系列)和chart.series[2](第三系列),因此未定义。

快速解决您的代码可能是:

var chart = $('#container').highcharts(); 
var series1 = [1, 52, 5, 98, 5, 929, 1, 9, 48]; 
var series2 = [1, 92, 35, 8, 25, 729, 61, 29, 38]; 
var series3 = [1, 59, 75, 26, 25, 829, 11, 19, 48]; 

chart.series[0].setData(series1, false); // setData on existing series, don't redraw 
chart.addSeries({data: series2}, false); // add new series, don't redraw 
chart.addSeries({data: series3}, true); // add new series, now redraw 

不是布尔参数传递给above methods将控制重绘。

示例here