response-vis - выравнивает отметки оси X с началом и концом столбцов - PullRequest
0 голосов
/ 14 июля 2020

Я пытаюсь сместить отметки оси X так, чтобы они были выровнены с прямоугольником каждого столбца. Идея состоит в том, что столбцы соответствуют событию между часами x - y, а тики немного вводят в заблуждение. Я пытался использовать tickFormat(), но, похоже, это влияет только на метки. Я также просмотрел документы D3, поскольку в документации по реакции на них упоминается довольно много.

текущий график

введите описание изображения здесь

Таким образом, в идеале полоса, центрированная на позиции 10:00, должна быть сдвинута вправо, чтобы она располагалась по центру между 10:00 - 11:00. Есть ли еще одна функция, которую я могу использовать для sh этого?

1 Ответ

0 голосов
/ 15 июля 2020

Я смог выполнить sh это после просмотра всех открытых проблем в репозитории response-vis. К счастью, в моем случае всегда будет заданное количество точек, поэтому это исправление будет работать, но если ваши тики имеют значение Dynami c, вам нужно будет рассчитать количество для перемещения тиков. В моем случае всего 24 тика, а ширина диаграммы 962px, поэтому расстояние между тиками составляет около 40 пикселей. Чтобы сдвинуть каждую отметку наполовину, переместите положение x на половину ширины между каждой отметкой (минус 1, чтобы учесть ширину 1 пиксель самой линии отметки). Также пришлось сместить текст вниз, потому что, как только я испортил преобразование, он очистил существующее преобразование , добавленное библиотекой. Не самый лучший, но, надеюсь, это поможет кому-то в будущем. ?

.rv-xy-plot__axis__tick {
  line {
    transform: translate(-19px, 0);
  }
  text {
    transform: translate(-19px, 14px);
  }
}
...