Динамическая фильтрация с помощью библиотеки D3

#javascript #d3.js #network-programming

#javascript #d3.js #сетевое программирование

Вопрос:

Я знаком с python, гораздо меньше с javascript. Мне была поставлена задача создать визуальное представление нашей сетевой инфраструктуры. Я решил, что хочу попробовать выполнить свою задачу с помощью библиотеки D3 на веб-странице.

Мой код на Python работает и предоставляет правильные файлы данных в формате json, но иногда слишком много узлов и ссылок для отображения, это не очень удобно для пользователя. Я хотел бы добавить таблицу на html-страницу, где вы можете отмечать случаи, которые будут фильтровать отображаемые данные.

Полный рабочий код, на который я черпал вдохновение, доступен здесь: https://networkgeekstuff.com/networking/network-topology-visualization-example-of-using-lldp-neighborships-netconf-and-little-python-javascript/

и результат:https://networkgeekstuff.com/article_upload/visualize/full /

Из этого кода я могу добавить поле «категория» к своим узлам — в файле json -, и я хотел бы, чтобы, если пользователь отметит регистр, мы отображали только выбранные соответствующие категории динамически.

Было бы это просто? Я не смог найти ни одного примера, который мог бы вдохновить меня на работу над ним, который соответствовал бы потребностям.

Спасибо

Ответ №1:

Вы могли бы установить прослушиватель событий для события изменения в флажок, а затем использовать собственный метод массива filter в javascript для этого. Здесь есть пример:

https://bl.ocks.org/johnnygizmo/3d593d3bf631e102a2dbee64f62d9de4