Предположим, есть массив data объектов, у которых есть поле date. Так же мы знаем ширину width графика.
- Определяем временную шкалу
var scaleX = d3.time.scale().rangeRound([0, width]);
- Вычисляем домен дат
scaleX.domain(d3.extent(data, function(d){ return d.date; }));
- Далее рисуем значения при помощи полученной шкалы
var label = layer.selectAll(".label").data(data);
label.exit().remove();
label.enter()
.append("text")
.attr("class", "label noselect")
.text(function(d) { return moment(d.date).format("DD MMMM YYYY") })
.attr("x", function(d){return scaleX(d.date) })
.attr("y", 40);