Ответ 1
Существует несколько решений, но в основном каждый использует один и тот же подход:
- создать слой поверх вашего источника, чтобы вы могли запрашивать на высоком уровне
- создать интерфейс переднего уровня для обсуждения с уровнем, описанным выше.
- используйте инструмент визуализации, который вы хотите
В качестве miro marchi указано, что для достижения этой цели есть несколько решений, некоторые из которых были заблокированы для конкретных источников данных, причем другие с гораздо большей свободой, но для этого потребуется некоторое кодирование навыки.
Datasource
Я бы начал с выбора типа источника: из типа данных, вероятно, я бы выбрал Neo4J, Titan или OrientDB (если вы представляете что-то более экзотическое с какой-то гибкостью). Все они предлагают API JSON REST, первый с фирменной системой и языком (Cypher), а два других - с использованием системы Blueprint/Rexster. Neo4J поддерживает стек Blueprint, если вам нравится Gremlin над Cypher.
Для других решений, таких, как другие NoSQL или SQL db, вероятно, вам нужно закодировать слой выше с относительным REST API, но он также будет работать - я бы не рекомендовал это для данных, которые у вас есть.
Теперь остается только третий пункт, и здесь у вас есть несколько вариантов.
Общие инструменты Viz
-
Sigma.js это бесплатный инструмент с открытым исходным кодом для визуализации графиков. Linkurious использует версию fork, насколько я знаю в своем продукте.
-
Keylines это инструмент визуализации коммерческого графика, с расширенными стилями, аналитикой и макетами, и они обеспечивают копирование/вставку демо, если вы используете Neo4J или Titan. Это не бесплатно, но поддерживает даже более старые браузеры - IE7 и далее...
-
VivaGraph это еще один бесплатный инструмент с открытым исходным кодом для инструмента визуализации графа, но он имеет меньшее сообщество по сравнению с SigmaJS.
-
D3.js это фактотум для визуализации данных, вы можете сделать в основном все виды визуализации, основанные на этом, но кривая обучения довольно крутая.
-
Gephi - еще одно бесплатное решение для настольных компьютеров с открытым исходным кодом, вы должны использовать внешний плагин с этим, возможно, но это поддерживает большинство форматов - graphML, CSV, Neo4J и т.д.
Спецификация поставщика
-
Конкретный - это коммерческий уникальный инструмент для поиска/исследования данных Neo4J.
-
консоль neo4J web-admin - даже если она базовая, они значительно улучшились с более новой версией
2.x.x
, основанный на D3.js.
Существуют и другие решения, о которых я, вероятно, забыл упомянуть, но те, которые были выше, должны предлагать хорошее разнообразие.
Другие узлы
Приведенные выше JS-инструменты визуализируют до 1500/2000 узлов одновременно, из-за ограничений JS.
Если вы хотите визуализировать больший материал - при расширении - я бы рекомендовал настольные решения, такие как Gephi.
Отказ
Я являюсь частью команды Keylines.