格式编号为时间d3js

时间:2016-10-11 15:03:54

标签: javascript d3.js

我有一个看起来像这样的数据集

date,lenght,sort
201506131449,2,1
201506131449,7,0
201506131450,35,1
201506131450,7,1

但接下来会有很多条目。

De date目前正在形成 201506131450是2015 - 06 - 13 14:50其中14:50是军事时间(2:50 pm)

我需要保留这样的格式以便在python中进行排序。

反正。现在标签输出的数字很大。虽然我只想要军事时间。

所以201506131450应标记为14:50

当前代码:

var x = d3.scale.linear()
.range([0, width]);

var xAxis = d3.svg.axis()
    .scale(x)
    .orient("bottom")
    .ticks(5);

x.domain(d3.extent(data, function(d) { return d.date; }));

这会在x轴上生成标签,如:201,506,131,600

如何将其更改为16:00

提前致谢!

1 个答案:

答案 0 :(得分:2)

在您的轴中,设置tickFormat

.tickFormat(function(d){
    return d.toString().slice(8,10) + ":" + d.toString().slice(10);
});

演示:



var dates = [201506131449, 201506131449, 201506131450,201506131450];

dates.forEach(function(d){
    console.log(d.toString().slice(8,10) + ":" + d.toString().slice(10))
});




PS:请记住,对于比例而言,这不是时间,这只是数字的线性比例。