Software/biblioteca para generación y actualización en tiempo real de gráficos de red (nodos y bordes) en sitio web con datos MySql

Estoy construyendo un sitio donde las personas envían datos que son esencialmente nodos y bordes, almacenados en una base de datos MySql a través de PHP. Quiero representar los datos a través de gráficos de red (nodos y bordes) en mi página web. Los gráficos deben ser interactivos, de modo que los usuarios puedan mostrar y ocultar nodos. Cuando se muestra un nuevo nodo, el gráfico debe actualizarse con nuevos nodos y bordes de la base de datos.

¿Hay algún software o biblioteca que me ayude a hacer esto?

Respuestas (3)

Puede usar la biblioteca de JavaScript D3.js (licencia BSD), contiene una buena función para presentar los datos como una red :

ingrese la descripción de la imagen aquí

ingrese la descripción de la imagen aquí

ingrese la descripción de la imagen aquí

Más ejemplos .

Podría hacer bien en echar un vistazo a Plotly : ofrece una interfaz de trazado web gratuita que puede manejar con python (con matplotlib ), R y MATLAB , siendo los dos primeros gratuitos, multiplataforma y ofreciendo gráficos interactivos, siendo el último cruzado. -plataforma solamente.

Un consejo: primero regístrese, luego vaya a la pestaña de aprendizaje y en la sección de cualquier herramienta que vaya a utilizar del panel API, seleccione "Comenzar" y se le presentará una página personalizada para incluir sus detalles de autenticación.

Algunos gráficos de ejemplo:ingrese la descripción de la imagen aquí

Plotly parece una gran herramienta para el trazado de datos, pero no puedo ver ningún gráfico de red en los ejemplos, y no puedo ver los nodos o bordes del gráfico mencionados en plot.ly/product/how-it-works . ¿Me lo estoy perdiendo o no es compatible con gráficos de red? Si no es así, pido disculpas por no dejar lo suficientemente claro que necesito un gráfico de red (nodos y bordes), no gráficos x/y.

También puede usar Linkurious.js , un conjunto de herramientas de Javascript para acelerar el desarrollo de aplicaciones de interacción y visualización de gráficos. Es gratis para proyectos de código abierto.

Permite expandir/ocultar nodos individuales si codifica estas funciones de interacción (lo he hecho para un proyecto). Los datos del gráfico pueden actualizarse en tiempo real, pero la actualización de la pantalla debe activarse manualmente.

Descargo de responsabilidad: Trabajo en Linkurious SAS.

Bienvenido al sitio! Está bien que esté afiliado a la empresa, pero sus respuestas aún deben ser de alta calidad . ¿Cómo se ajusta esta solución a todos los puntos mencionados en la pregunta? Por ejemplo, ¿permite expandir/ocultar nodos individuales? ¿Actualización en tiempo real?
he editado la respuesta