时间戳格式化Highcharts数据表

时间:2019-05-13 19:47:14

标签: php highcharts

我正在以毫秒精度在Highcharts中绘制时间序列数据,并且工作正常,但是当我调出数据表时,它使用了不同的时间格式:

Highcharts screenshot

有没有一种方法可以在表格中显示毫秒?谢谢。

1 个答案:

答案 0 :(得分:1)

不幸的是,Highcharts没有默认选项来显示数据表中的数据(以毫秒为单位)(时间戳)。但是,可以通过包装Highcharts.Chart.prototype.getDataRows方法并映射用于绘制表格的数据数组来轻松完成此操作。

包装代码:

(function(H) {
  H.wrap(H.Chart.prototype, 'getDataRows', function(proceed, multiLevelHeaders) {
    var rows = proceed.call(this, multiLevelHeaders);
    rows = rows.map(row => {
      if (row.x) {
        row[0] = H.dateFormat('%Y-%m-%y %H:%M:%S.%L', row.x);
      }
      return row;
    });

    return rows;
  });
}(Highcharts));

演示: