In this article I will highlight some Graph Theory Open Source Projects, Graph theory is the study of graphs that concerns with the relationship among edges and vertices.
In computer science, they provide a handy way to represent a relationship between pairs of objects.
That being said let’s explore Top 15 Graph Theory Open Source Projects.
1. Cytoscape.js
It’s a Graph theory (network) library for visualisation and analysis, Cytoscape.js is a fully featured graph theory library.
Cytoscape.js contains a graph theory model and an optional renderer to display interactive graphs. This library was designed to make it as easy as possible for programmers and scientists to use graph theory in their apps, whether it’s for server-side analysis in a Node.js app or for a rich user interface.
2. D3 Graph Theory
D3 Graph Theory is a front-end project aimed at anyone who wants to learn graph theory.
It provides a quick and interactive introduction to the subject. The visuals used in the project makes it an effective learning tool.
3. Maze generator
Maze generator can create rectangular, hexagonal, honeycomb, and circular mazes.
Maze generation can be done using Kruskal’s algorithm, depth-first search, breadth-first search, loop-erased random walk, or Prim’s algorithm. Mazes can be rendered in SVG or png format (using Gnuplot as intermediate in the latter case).
4. Network Analysis Made Simple
This is a tutorial project designed to teach you the basic and practical aspects of graph theory. It has been presented at multiple conferences (PyCon, SciPy, PyData, and ODSC) in a variety of formats (ranging from 1.5 hr to 4 hour-long workshops).
The material is designed for a live tutorial presentation, with the code available for you to reference afterward.
5. Greuler
Greuler is a graph theory visualization tool powered by d3 and on top of WebCola.
It allows the creation and manipulation of graphs with a simple API.
6. Mondrian
Mondrian is a set of CLI tools to help you to analyze and refactor highly coupled classes. As you know Law of Demeter and S.O.L.I.D guidances, you need your classes loosely coupled. And for this, there is one only rule: ABSTRACTION
This app provides some helpers to add abstraction into concrete classes with minimum pain.
7. Pown Recon
Pown Recon is a target reconnaissance framework powered by graph theory. The benefit of using graph theory instead of flat table representation is that it is easier to find the relationships between different types of information which comes quite handy in many situations.
Graph theory algorithms also help with diffing, searching, like finding the shortest path, and many other helpful tasks to aid information discovery and intelligence gathering.
8. Kite
Kite is an Interactive Visualization Tool for Graph Theory. It is used to visualize the module dependency graph of your elm projects.
This project is fully written in Elm which helps to bring functional programming to the browser.
9. Erdos
Erdos is a very light, modular, and super easy to use modern Graph-theoretic algorithms framework for Java.
It contains graph algorithms that you can apply swiftly with one line of code and was primarily developed to back a worker manager tasks for various Java projects including one in Android.
10. Abuelo
Abuelo is a graph theory library written in Ruby that allows you to build a representation of a graph.
Abuelo sticks with the same vocabulary (nodes, edges) for directed and undirected graphs in contrast to theoretical graph theory.
11. BrainGraph
Braingraph is an R package for performing graph theory analyses of brain MRI data.
It is most useful in atlas-based analyses (e.g., using an atlas such as AAL, or one from Freesurfer); however, many of the computations (e.g., the GLM-based functions and the network-based statistic) will work with any graph that is compatible with igraph.
12. molecules.js
It’s a chemical graph theory library for JavaScript.
Features
- Import molecules encoded with SMILES chemical line notation.
- Compute various graph matrices of a molecule (e.g. adjacency, degree, distance, Laplacian, Randic, reciprocal).
- Compute several topological indices of a molecule (e.g. Balaban, Harary, Hyper-Wiener, Randic, Wiener).
- Visualize molecules with
d3.js
force-directed graphs.
13. GraphTea
GraphTea is a software framework to work on graphs and social networks.
It helps you to:
- draw a graph
- get reports about it
- run algorithms on it
- visualize it
14. NetworkX
NetworkX is a Python package for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks.
Features
- Data structures for graphs, digraphs, and multigraphs
- Many standard graph algorithms
- Network structure and analysis measures
- Generators for classic graphs, random graphs, and synthetic networks
- Nodes can be “anything” (e.g., text, images, XML records)
- Edges can hold arbitrary data (e.g., weights, time-series)
15. Spectral Trajectory & Behavior Prediction
This is the code base for Trajectory and Driver Behavior Prediction in Autonomous Vehicles using Spectral Graph Theory.
the project supports any dataset that contains trajectory information.
Conclusion
All of these Graph Theory Open Source Projects are promising and active projects. They are open to pull requests and respond to issues, You should check them out and contribute to the ones you like. Share other Graph Theory Open Source Projects projects you know with us, We appreciate your comments.