Highchart系列一个接一个地显示而不是平行

时间:2013-06-12 08:12:57

标签: highcharts

你过得愉快吗?

我的Highchart遇到了这个挑战。

Highchart

系列一个接一个地显示而不是平行。

这是我的JSON_Array的输出。而不是2013-08-02 13:30:40时间值以微缩时格式显示。这只是为了更好地解释。

那可能是错的,系列会一个接一个地显示出来吗?

enter image description here

<script type="text/javascript">
$(function(){   
    $.getJSON('micro-grid_data.php', 
    function(data) { 
    Highcharts.setOptions({ global: { useUTC: false } }); 
    chart = new Highcharts.StockChart
    ({
    chart:  {  renderTo: 'container' , zoomType: 'x',   type: 'line', width: 900 },  
         legend: { enabled: true, verticalAlign:'bottom' },
    navigator: { enabled: false  },
    title:  { text: 'You see the data of the last measured hour!' },  
    credits: { enabled: false  },
    plotOptions: {  series: { marker : { enabled: false, states: {  hover: { enabled: true  }  }   } }   },
    xAxis: {  type: 'datetime', title: { text: 'time'  } }, 
    rangeSelector:{ enabled: false },
    yAxis:   { title: { text: '' , style: { color : '#4572A7' } } },     
    tooltip: { xDateFormat: '%e. %b.%Y  %H:%M:%S', valueDecimals: 2  }, 
     series:   [ { name: 'consumer' , data: data[0]} ,  { name: 'producer' , data: data[1]}],
    exporting: { enabled: true },
    });  
    // Format the y-data.
    Highcharts.numberFormat(this.y, 2, '.', ',');
});
});


// Redraw the chart. 
function redraw()
{    
// Get variables from configuration settings area.
var startdate = $('#<?php echo $startdatewithout ?>').val();
var enddate = $('#<?php echo $enddatewithout ?>').val();
var range =  $('#range').val();


  /* New data is loaded via AJAX-call.
   * Output is an JSON-Array, Example: [[1,2],[20,3]].
   * If success the new data is set in the chart and the screen will be unhide.
   */
  $.ajax({      
    url: "micro-grid_data.php?string=<?php echo $string; ?>&range="+range+"&startdate="+startdate+"&enddate="+enddate+"&reload=1",
    dataType: 'json',
    success: function(datareload) {  // Set new data in chart.                      
                     chart.series[0].setData(datareload[0]);  
                     chart.series[1].setData(datareload[1]);  
                         // Unhide the screen.
                     chart.hideLoading();
                    },
  });
};
return false;
};

1 个答案:

答案 0 :(得分:2)

第二个系列的时间格式存在问题。

显示您实际使用的内容总是更好,而不是将时间转换为人类可读的格式,只是为了在此处显示。如果您没有显示当前设置的确切方式,请对任何事情进行故障排除。