3

highcharts 弄错了我的时间

我来自委内瑞拉以防万一。我做一个实时系统,我在我的数据库中获取时间、秒和毫秒,比如 10:39:09:2

我应用 strtotime($time) 然后我通过 json 发送到图表

在我的highcharts中,我进入了

xAxis: {
  type: 'datetime',
  title: {
    text: 'Tiempo'
  }

UTC 函数已经为假

Highcharts.setOptions({
  global: {
    useUTC: false
  }
});

我获取json的功能是

function requestData_Frecuencia() {
  $.ajax({
    url: 'Datos_Frecuencia.php',
    success: function (point) {
      var series = chart_Frecuencia.series[0],
        shift = series.data.length > 400;
      //add point
      chart_Frecuencia.series[0].addPoint(eval(point), true, shift);
      setTimeout(requestData_Frecuencia, 500);
    },
    cache: false
  });
}

PS。自从我用英语写作以来已经有一段时间了,如果我写错了或者不清楚的地方,请原谅我。

4

3 回答 3

0

您应该检查数据库中的原始值。我知道 MySQL 将日期存储在GMT中。不确定您正在使用的数据库,但这样做的原因是:

GMT 是绝对时间参考,不随季节变化。

您必须将时间转换为您的语言环境,即UTC–04:30

看看:在 JavaScript 中将日期转换为另一个时区

于 2013-08-20T16:05:55.937 回答
0

Highcharts 不包括时区,您唯一能做的就是禁用 UTC,就像您一样。那么您需要翻译您的数据或使用标签格式化程序/工具提示格式化程序来显示正确的数据。

于 2013-08-21T14:03:03.563 回答
0

我发现我做错了什么(在这里找到答案)。我曾经花时间在 php 中,例如:

while($r2 = pg_fetch_array($sth)) {
    $hora = $r2['hora'];
    $Frecuencia  = $r2['frecuencia'];
}
$x=strtotime($hora); 

我需要乘以 1000 的时间。我认为,是因为我需要建议日期以毫秒的形式(即整数)

while($r2 = pg_fetch_array($sth)) {
    $hora = $r2['hora'];
    $Frecuencia  = $r2['frecuencia'];
}
$x=strtotime($hora)*1000; 

PD:无论如何,感谢大家的建议和回应。我真的很感激

于 2013-08-29T14:47:21.997 回答