Я хотел бы визуализировать сетевой граф в приложении AngularJS. Узлы и ребра сохраняются как объект JSON, а узлы будут добавлены и изменены позже (скажем, каждые 30 секунд). Я хочу использовать привязку данных Angular для автоматического обновления графика при изменении объекта JSON. График будет иметь 10-1000 узлов. Узлы будут прямоугольными текстовыми узлами, содержащими около предложения каждый. Я хотел бы, чтобы график был масштабируемым и панорамным.
Я знаю о следующих вариантах:
-
Легко выполнить динамическое обновление с помощью Angular (используя
ParticleSystem.merge
). Тем не менее, Arbor, похоже, не поддерживает масштабируемое поведение, и, похоже, он не поддерживается хорошо. Например, ошибка single- node еще не решена. -
Существует демонстрационная версия с масштабируемым силовым механизмом, а в разных местах есть информация об использовании d3 с Angular. D3 хорошо поддерживается, но он выглядит ниже, чем ниже. Например, создание сетевого графика с красивыми прямоугольными метками node кажется нетривиальным.
-
VisJS поддерживает масштабируемые сетевые графики, а незавершенная Angular библиотека, но я не знаю, насколько надежны как VisJS, так и его Angular.
-
SigmaJS также поддерживает масштабируемые сетевые графики, но я не знаю, хорошо ли он играет с Angular.
Существуют ли другие соответствующие библиотеки? Какая лучшая библиотека используется для этого проекта и как я могу реализовать такой масштабируемый динамический сетевой график, учитывая библиотеку?