Рисование не непрерывных линий с помощью d3

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

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

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

1 ответ

Решение

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

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

Вот хороший пример этого в действии.

Другие вопросы по тегам