I'm writing a python application that will make heavy use of a graph data structure. Nothing horribly complex, but I'm thinking some sort of graph/graph-algorithms library would help me out. I've googled around, but I don't find anything that particularly leaps out at me.
Anyone have any good recommendations?
matplotlib. matplotlib is the O.G. of Python data visualization libraries. Despite being over a decade old, it's still the most widely used library for plotting in the Python community.
python-graph (dist: python-graph-core, mod: pygraph) is a library for working with graphs in Python. This software provides a suitable data structure for representing graphs and a whole set of important algorithms. (Last commit in 2018, no issue page)
1. Matplotlib. Matplotlib is the most popular data visualization library of Python and is a 2D plotting library.
A graph manipulation library in pure Python. Available on PyPI. Pygraph aims to be an easy-to-use and functional graph library that doesn't sacrifice advanced capabilities or usability in the process.
There are two excellent choices:
NetworkX
and
igraph
I like NetworkX, but I read good things about igraph as well. I routinely use NetworkX with graphs with 1 million nodes with no problem (it's about double the overhead of a dict of size V + E)
If you want a feature comparison, see this from the Networkx-discuss list
Feature comparison thread
I would like to plug my own graph python library: graph-tool.
It is very fast, since it is implemented in C++ with the Boost Graph Library, and it contains lots of algorithms and extensive documentation.
Have you looked at python-graph? I haven't used it myself, but the project page looks promising.
Also, you might want to take a look at NetworkX
Use the Boost Graph Library - Python Bindings.
Take a look at this page on implementing graphs in python.
You could also take a look at pygraphlib on sourceforge.
I'm having the most luck with pydot. Some of the others are hard to install and configure on different platforms like Win 7.
http://code.google.com/p/pydot/
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With