Python Graph Library

Question:

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?

Asked By: cpatrick

||

Answers:

Take a look at this page on implementing graphs in python.

You could also take a look at pygraphlib on sourceforge.

Answered By: Brian R. Bondy

Have you looked at python-graph? I haven’t used it myself, but the project page looks promising.

Answered By: zweiterlinde

Also, you might want to take a look at NetworkX

Answered By: lmount

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

Answered By: Gregg Lind

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.

Answered By: Tiago Peixoto

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/

Answered By: syvex

I second zweiterlinde’s suggestion to use python-graph. I’ve used it as the basis of a graph-based research project that I’m working on. The library is well written, stable, and has a good interface. The authors are also quick to respond to inquiries and reports.

Answered By: jtguerin
Categories: questions Tags: ,
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.