Pregunta
Estoy escribiendo una aplicación de python que hará un uso intensivo de la estructura de datos de un gráfico. Nada horriblemente complejo, pero creo que algún tipo de biblioteca de algoritmos de gráficos / gráficos me ayudaría. He buscado en Google, pero no encuentro nada que salte de mi cuenta.
¿Alguien tiene buenas recomendaciones?
Solución
Hay dos opciones excelentes:
y
Me gusta NetworkX, pero también leo cosas buenas sobre igraph. Rutinariamente utilizo NetworkX con gráficos con 1 millón de nodos sin problemas (es casi el doble de gastos generales de un dictado de tamaño V + E)
Si desea una comparación de características, vea esto en la lista de discusión de Networkx
Otros consejos
Me gustaría conectar mi propia biblioteca de gráficos de python: herramienta de gráficos .
Es muy rápido, ya que se implementa en C ++ con la biblioteca de gráficos de Boost y contiene muchos algoritmos y documentación extensa.
¿Has visto python-graph ? No lo he usado, pero la página del proyecto parece prometedora.
Además, es posible que desee consultar NetworkX
Eche un vistazo a esta página sobre la implementación de gráficos en python .
También puede consultar pygraphlib en sourceforge.
Utilice la Biblioteca de gráficos de Boost - Enlaces Python .
Estoy teniendo más suerte con pydot. Algunos de los otros son difíciles de instalar y configurar en diferentes plataformas como Win 7.
Respeto la sugerencia de zweiterlinde de usar python-graph. Lo he usado como la base de un proyecto de investigación basado en gráficos en el que estoy trabajando. La biblioteca está bien escrita, es estable y tiene una buena interfaz. Los autores también responden rápidamente a las consultas e informes.