Javascript 添加新行后,折线图消失

Javascript 添加新行后,折线图消失,javascript,csv,highcharts,Javascript,Csv,Highcharts,我无法将一个大的.csv文件上载到我的HIGHCHART图表。我已经能够用9(I)列绘制一个85KB的多达1486行的图形。以下是一个例子: TimeStamp Temp_1_01 Temp_1_02 Temp_2_01 Temp_2_02 Temp_3_01 Temp_3_02 Temp_4_01 Temp_4_02 5/15/2014, 3:25 408 487 63 84 67 91 63 78 5/15/2014 3:30 408 487 63 84 67 91 63

我无法将一个大的.csv文件上载到我的HIGHCHART图表。我已经能够用9(I)列绘制一个85KB的多达1486行的图形。以下是一个例子:

TimeStamp Temp_1_01 Temp_1_02 Temp_2_01 Temp_2_02 Temp_3_01 Temp_3_02 Temp_4_01 Temp_4_02
5/15/2014, 3:25 408 487 63  84  67  91  63  78
5/15/2014 3:30  408 487 63  84  67  91  63  78
5/15/2014 3:35  407 489 63  84  67  91  63  78
5/15/2014 3:40  408 488 63  84  67  91  63  78
5/15/2014 3:44  408 488 63  84  67  91  63  78
...
5/22/2014 9:40  483 421 0   93  76  95  72  89
当我添加一条新线时,线图将消失。有什么建议吗

下面是javascript:

 $.get('Dropbox/geo/sites/GC_Room/loveland.csv', function(data)
       {
          // Split the lines
          var lines = data.split('\n');
          var i = 0;
          var csvData = [];





          // Iterate over the lines and add categories or series
          $.each(lines, function(lineNo, line)
          {
             csvData[i] = line.split(',');

             i = i + 1;

          });


          var columns = csvData[0];

          var categories = [], series = [];


          for(var colIndex=0,len=columns.length; colIndex<len; colIndex++)
          {
             //first row data as series's name
             var seriesItem=
             {
                data:[],
                name:csvData[0][colIndex]
             };

             for(var rowIndex=1,rowCnt=csvData.length; rowIndex<rowCnt; rowIndex++)
             {
                //first column data as categories,
                if (colIndex == 0)
                {
                   categories.push(csvData[rowIndex][0]);
                }
                else if(parseFloat(csvData[rowIndex][colIndex])) // <-- here
                {
                   seriesItem.data.push(parseFloat(csvData[rowIndex][colIndex])); 
                }
             };
             //except first column
             if(colIndex>0)series.push(seriesItem);
          }         



          // Create the chart
          var chart = new Highcharts.Chart(
          {
             chart:
             {
                alignTick: false,
                renderTo: 'LANE_METALS',
                type: 'line'

             },
             title: {
                    text: 'Monthly Average Temperature',
                    x: -20 //center
                },
                subtitle: {
                    text: 'Source: LANE METALS',
                    x: -20
                },



             xAxis: 
             {  
                categories: categories,
                labels:

               {
                  step: 200,
                   text: 'Time',
                },
                tickWidth: 0
             },
             yAxis: 
             {
                        title: {
                        text: 'Temperature (\xB0C)'
                    },
                min: 0
             },
             tooltip:
             {
                formatter: function()
                {
                   return '<b>'+ this.series.name +'</b><br/>'+ this.x +': '+ this.y +'\xB0C';
                }
             },
             legend:
             {
                layout: 'vertical',
                //backgroundColor: '#FFFFFF',
                //floating: true,
                align: 'left',
                //x: 100,
                verticalAlign: 'top',
                //y: 70,
                borderWidth: 0
             },

             plotOptions:
             {
                area:
                {
                   turboThreshold: 0,
                   stacking: 'normal',
                   lineColor: '#666666',
                   lineWidth: 1,
                   marker:
                   {
                      lineWidth: 1,
                      lineColor: '#666666'
                   }
                }
             },
             series: series
          });

       });      
$.get('Dropbox/geo/sites/GC\u Room/loveland.csv',函数(数据)
{
//分道扬镳
变量行=data.split('\n');
var i=0;
var csvData=[];
//迭代行并添加类别或系列
$.each(行,函数)(行号,行)
{
csvData[i]=line.split(',');
i=i+1;
});
var columns=csvData[0];
变量类别=[],系列=[];

对于(var colIndex=0,len=columns.length;colIndex问题可能是因为
turboThreshold

默认情况下,turboThreshold设置为1000。如果点大于turboThreshold,则不会绘制图表

您可以通过尝试渲染小于1000的点和大于1000的点来对此进行诊断

这么定

plotOptions: {
   series: {
       turboThreshold: 10000
   }
}
如果您的值不超过10000。
这应该可以。再试一次。

那么一个包含1487行的输入文件会导致图形消失吗?你能通过调试器确定脚本中发生崩溃的位置吗?如果它使用的行数较少,但数据量较大,则不需要,你需要增加turboThreshold参数。是@Henry Keiter,当我添加第1487行时,graph消失,背景变为灰色。这是文件:谢谢@Sebastian Bochan,Strikers提出了同样的建议,但我不知道在我的脚本中放置plotOptions的位置。您已经定义了plotOptions,所以在plotOptions->区域中添加关于阈值的行。谢谢@Strikers。我到底要将脚本替换为什么插入这个?我是否完全替换plotOptions块并用它封装“series”?在plotOptions->area中,将turbothreshold保留为一个很大的数字。