2012-01-12 5 views
6

Я создаю приложение Django и хочу иметь визуализацию социальной сети. Я ищу библиотеку, которая может нарисовать структуру диаграмм/сетевых данных, но также сделать ее интерактивной. Я хотел бы иметь возможность щелкнуть узел и получить информацию из этого узла (имя, сеть и т. Д.) В другом месте на страницеDjango и визуализация интерактивной графики/сети

До сих пор я нашел python-graph и graphviz очень мощные инструменты визуализации, но они создают статические изображения, поэтому вы не можете нажимать на них. Я также нашел эту тему

Graph visualization library in JavaScript

который был много предложений, но некоторые из них для графов, как и в графиках, а не график, как в сетевом графике социального. Некоторые из них очень старые, и некоторые из них являются интерактивными только в том, что узел можно перетаскивать и перемещать в другом месте на холсте. Мне все равно, что пользователь может изменить график, я просто хотел бы, чтобы объект узла переносил с собой данные, которые могут отображаться где-то.

Любые предложения?

+0

Hi- Я ищу то же самое, я новичок в Python и задаюсь вопросом, можете ли вы поделиться своим проектом. – user2912312

ответ

1

Мне нравится d3. Вот пример force-directed graph (часто используется для отображения социальных сетей).

Было бы довольно легко добавить вид обработки кликов, который вы ищете для примера силы d3.

5

Я сделал что-то подобное, используя PyGraphviz. Вы можете сохранить график как SVG и показать SVG на своем веб-сайте. Затем вы можете использовать что-то вроде jQuery SVG для прикрепления обработчиков к узлам.

Я реализовал более гибкое решение и сериализовало все узлы и края в формате JSON и отправил его на веб-сайт. Затем я рисую график, используя Raphaël. Это решение совместимо с кросс-браузером и очень гибким.