2012-01-12 8 views
6

Estoy creando una aplicación Django y quiero tener visualizaciones de una red social. Estoy buscando una biblioteca que pueda dibujar una estructura de gráficos/datos de red, pero también hacerla interactiva. Me gustaría poder hacer clic en un nodo y mostrar información de ese nodo (Nombre, Red, etc.) en otro lugar en la páginaDjango y visualización interactiva de gráficos/redes

Hasta ahora he encontrado que python-graph y graphviz son muy poderosas herramientas de visualización, pero crean imágenes estáticas, por lo que no puede hacer clic en ellas. También he encontrado este hilo

Graph visualization library in JavaScript

que tenía un montón de sugerencias, pero algunos de ellos son para gráficos como en las cartas, no gráfico como en el gráfico de la red social. Algunos de ellos son muy antiguos, y algunos de ellos son interactivos solo porque el nodo se puede arrastrar y mover a otro lugar en un lienzo. No me importa tanto que el usuario pueda cambiar el gráfico, solo me gustaría que el objeto nodo cargue datos con él que puedan mostrarse en algún lugar.

¿Alguna sugerencia?

+0

Hi- Estoy buscando lo mismo, soy nuevo en Python y me pregunto si puedes compartir tu proyecto ... gracias – user2912312

Respuesta

1

Me gusta d3. Aquí hay un ejemplo de force-directed graph (a menudo se usa para mostrar redes sociales).

Sería bastante fácil agregar el tipo de manejo de clics que busca al ejemplo de fuerza d3.

5

Hice algo similar con PyGraphviz. Puede guardar el gráfico como SVG y mostrar el SVG en su sitio web. Luego puede usar algo como jQuery SVG para adjuntar manejadores a los nodos.

Implementé una solución más flexible y serialicé todos los nodos y bordes a un formato JSON y los envié al sitio web. Luego dibujo el gráfico usando Raphaël. Esta solución es compatible con varios navegadores y muy flexible.

Cuestiones relacionadas