Recently I contributed to an open source project named GraphTea. It’s a great software coded in Java ( by Sharif University of Iran ) to work on graphs, network flows and social networks. It’s so beneficial for students who are going to master graph algorithms. it’s open source and free.
Some features of GraphTea :
- Drawing your graph using mouse or predefined graphs, like trees, complete graphs, stars, generalized peterson and … .
- get your graph’s information (under graph > reports menu), like number of connected components, maximum cut, number of triangles and … .
- Run algorithms step by step on your network and see how they work. This is very useful for learning graph algorithms. You can pause, and it shows the current state of algorithm by coloring arcs and nodes.
- Presenting your graphs in your papers, websites or reports. GraphTea has a wide range of options to draw graphs, different colors for edges and vertices, borders, fonts, and sizes and etc. as you finish drawing your graph, you can save to a image file or even to a Tex document to put in your paper.
- making new graph generators, graph reports, file types, actions, algorithms by writing extensions. Extensions provide a gateway to add new functionalities as simple as putting a file to extensions directory. You can write them using Java and Matlab. For more samples take a look at extensions directory.