在HH:MM的Xaxis Highcharts上演出时间

时间:2017-08-09 13:54:03

标签: javascript php datetime highcharts

我正在使用PHP,Javascript和Highcharts Library。

我需要在Yaxis中打印温度的变化,在Xaxis上打印HH:MM的时间。

var" $ fecha"的格式是这样的:

  

2017年8月9日星期三14:47:01 GMT + 0200(Hora de verano浪漫)

var" $ dateProc"的格式是这样的:

  

1502283181000

我的代码是:

<script src="https://code.jquery.com/jquery.js"></script>
           <!-- Importo el archivo Javascript de Highcharts directamente desde su servidor -->
      <script src="http://code.highcharts.com/stock/highstock.js"></script>
      <script src="http://code.highcharts.com/modules/exporting.js"></script>

      <script>
      myChart = new Highcharts.chart('container', {
              title: {
                  text: 'Temperatura in the Office'
              },
              xAxis: {
                  type: 'datetime',
                  dateTimeLabelFormats: {
                        minute: '%H:%M',
                        hour: '%H:%M'
                  }
              },
              yAxis: {
                  title: {
                      text: 'TEMPERATURA'
                  }
              },
              series: [{
                  name: 'TIEMPO',
                  data:(
                    function(){
                      var data = [];
                      <?php  for($i = count($rawdata)-1; $i>=0;$i--){ ?>
                        var $fecha = new Date("<?php echo $rawdata[$i]->fechaHora;?>");
                        $dateProc = $fecha.getTime();

                      data.push(['$dateProc',<?php echo $rawdata[$i]->temperatura;?>]);
                      <?php } ?>
                    return data;
                  })()
              }]
            });
   </script>

结果如下:

graphic result

我的问题是,在Xaxis中,不要在HH:MM中显示分隔符信息。

有人知道我做错了什么吗? 导致时间以奇怪的方式打印

1 个答案:

答案 0 :(得分:0)

在您的代码中,您执行以下操作

 data.push(['$dateProc',<?php echo $rawdata[$i]->temperatura;?>]);

这意味着数组中的数据最终看起来像这样:

['time', temperature]

什么时候应该看起来像这样

[time, temperature]

也就是说,时间应该是integer,而不是string