javascript - 使用 Dygraphs 格式化日期时出现问题

标签 javascript date dygraphs

我正在使用 Dygraphs 绘制 CSV 文件中的数据。日期是 UNIX 时间戳。

目前我正在解析和格式化日期,如下所示:

    ...
    axes: {
      x : {
        valueFormatter: Dygraph.dateString_,
        ticker: Dygraph.dateTicker
      }
    },
    ...

以下是典型 CSV 文件的第一行:

x,ATLAS.HLTSV.AvailableCores.DF.HLTSV.Events
1392052678784,0.0
1392052703784,0.0
1392052708784,30.0
1392052713784,845.0
1392052718784,1313.0
1392052723784,1313.0
1392052728784,1431.0
...

这给了我以下结果:

graph

呈现的日期是正确的,但我有 2 个问题

  • 首先,日期太长,明显破坏了图表布局。

  • 其次,粒度是固定的。我希望它根据缩放级别进行更改,例如本例中:http://dygraphs.com/tests/demo.html

如何解决这个问题?

最佳答案

虽然我没有找到如何在您描述的原始场景中格式化客户端的日期,但似乎有效的解决方法是首先格式化日期服务器端。不要直接向 Dygraphs 提供时间戳,而是将“Y-m-d H:i:s”字符串传递给日期字段,时间标签将在最终图表中变得简短且可读。这也意味着如果您希望数据源是 csv 文件,您必须首先在服务器端对其进行预处理。

关于javascript - 使用 Dygraphs 格式化日期时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23220594/

相关文章:

php - 比较sql中的时间戳和日期

php - 第一个星期二 PHP

java - 如何从字符串中获取经过的年数

javascript - 将 dygraph 内容注入(inject) jquery UI Accordion 不显示

r - 在 R dygraphs 中更改图例的时间戳格式

javascript - Angular - 按单个 ng-model 过滤,但按多个属性过滤?

javascript - Dropzone.js - maxFilesize 增加不起作用

RStudio : Refresh viewer output at runtime when plotting graphs

javascript - 点击事件不会在点击时触发?

javascript - 保护 Meteor/Node 服务器的最佳实践