Подтвердить что ты не робот

Рисование не непрерывных линий с d3

Я использую d3.js для создания простого линейного графика. Я хочу знать, есть ли способ создать "дыры" на графике, то есть, если линия может быть прервана или разрезана, когда нет доступных данных.

Я изучаю либо удаление мест, которые мне не нужны в домене, либо установка веса линии в 0 в определенных сегментах, но я не могу найти способ сделать это.

Спасибо за вашу помощь!

4b9b3361

Ответ 1

Генератор D3 line имеет встроенную функцию для этого, line.defined, Вы можете использовать эту функцию для управления тем, где ваша линия определена и где она отсутствует (например, когда у вас отсутствуют данные.) Если вы хотите сделать свою строку undefined всякий раз, когда второе значение в массиве точек является значением NaN javascript, вы могли бы сказать:

line.defined(function(d) { return !isNaN(d[1]); });

Здесь является хорошим примером этого в действии.