@Radist_101

Как с помощью d3.js разбить ось X по времени?

Как с помощью d3.js разбить ось X по времени, при этом указав время для начала и конца оси X? Например, мне надо разбить ось начиная с 8 часов утра до 8 часов вечера
  • Вопрос задан
  • 3120 просмотров
Решения вопроса 1
@Avashah
Предположим, есть массив data объектов, у которых есть поле date. Так же мы знаем ширину width графика.
  1. Определяем временную шкалу
    var scaleX = d3.time.scale().rangeRound([0, width]);
  2. Вычисляем домен дат
    scaleX.domain(d3.extent(data, function(d){ return d.date; }));
  3. Далее рисуем значения при помощи полученной шкалы
    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);
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы