What are the best tools / frameworks / libraries available to implement and run algorithms on graphs?

In particular I need a tool that can load a set of nodes, edges and values assigned to these edges and then allows me to perform operations on them.

I already found R but I'm wondering if there is a more "programmer friendly" tool available?


Are you talking about really large graphs -- 10+ GB? Google uses it's own framework Pregel for that: http://googleresearch.blogspot.com/2009/06/large-scale-graph-computing-at-google.html

There now are quite a few open-source frameworks that copy that approach, some are discussed in http://blog.acaro.org/entry/google-pregel-the-rise-of-the-clones.

For smaller graphs that fit within the memory of a single computer there have been libraries for a long time, probably the most well known one is Boost Graph.

| improve this answer | |

Depending on what kind of operations you're talking about, I used yFiles a few years ago and found it to be extremely powerful for graph visualisation - as well as having best-of-breed algorithms for things like automatic layout, shortest path analysis etc

The main library is Java but there are also .NET and Flex ports.

Could be worth looking at :)

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.