即使使用connectNulls,也连接了Highcharts / Highstock datetime null数据:false

时间:2014-01-10 21:51:07

标签: highcharts

我试图获得一个堆积区域的高库存图表,而不是显示空值。以下是选项:

var chartOpts = {
    chart: {
        renderTo: "graphContainer",
        type: 'area'
    },
    title: {
        text: 'Fruit Consumption'
    },
    xAxis: {
         type: 'datetime',
         ordinal: false
    },
    yAxis: {
        title: {
            text: 'Fruit eaten'
        }
    },
    legend: {enabled: true},
    plotOptions: {
        area: {
            connectNulls: false,
            stacking: 'normal',
            lineColor: '#666666',
            lineWidth: 1,
            marker: {
                lineWidth: 1,
                lineColor: '#666666'
            }
        }
    },
    series: []
};

这是填写数据的代码:

$.post('GetData',{fechaInicio:fechaInicio, fechaFin:fechaFin},function(dataXML) { 
           var xml = $(dataXML);
           var fecha;
           var hora;
           var fechaUTC;
           var dato;
           var division;
           xml.find('series').each(function(i, series) {
               var seriesOptions = {
                   name: $(series).find('name').text(),
                   data: []
               };
                // push data points
               $(series).find('data point').each(function(i, point) {
                   division=$(point).text().split(",");
                   fecha = division[0].split("/");
                   hora = division[1].split(":");
                   fechaUTC = Date.UTC(parseInt(fecha[2]),(parseInt(fecha[0])-1),parseInt(fecha[1]),parseInt(hora[0]),parseInt(hora[1]));
                   dato = parseInt(division[2]);
                   seriesOptions.data.push([fechaUTC, dato]);
               });
                chartOpts.series.push(seriesOptions);
           });
           var chart = new Highcharts.StockChart(chartOpts);
      });

我从中得到的是(对不起链接,但我无法发布图片):

http://i.stack.imgur.com/pFt6R.jpg

禁用除SOVQ之外的所有数据系列,我得到了这个:

http://i.stack.imgur.com/ak44n.jpg

在最后一个图表中,似乎数据从第一个小时(00:00)到14:15是恒定的,但在该时间间隔内有空数据,所以我期望的是间隔为空。

如果您可以看到选项代码,我将connectNulls选项设置为false(我认为false值是highstock的默认值)。有没有人知道是否有其他选项不显示空数据?

提前致谢。

问候。

1 个答案:

答案 0 :(得分:0)

它应该工作。你确定你真的有空数据点吗?从快速浏览一下你的代码,我认为dato没有任何方法可以为空。我在这一行设置了一个断点:

var chart = new Highcharts.StockChart(chartOpts);

确保确实存在null的数据点。我怀疑没有。