我有折线图。 x轴有日期,但它们不是正常分布的(午餐或周末没有数据),但我想按顺序显示它们。 示例数据和我的示例图表如下,我不希望我的图表显示没有数据的时间直线,它应该从前一个日期开始。
我使用x = d3.time.scale().range([0, width])
绘制x行。
有什么想法吗?
x y
10:00:00 4
10:10:00 5
10:20:00 3
10:30:00 2
10:40:00 5
10:50:00 3
14:30:00 6
14:40:00 7
答案 0 :(得分:5)
ordinal scale
可以解决问题。尝试这样的事情:
将x = d3.time.scale().range([0, width])
替换为以下内容:
var x = d3.scale.ordinal()
.domain(data.map(function(d) {
return d.date;
}))
.rangeRoundBands([0, width], 0.1);