1 unstable release
new 0.2.0 | Feb 22, 2025 |
---|---|
0.1.0 |
|
#31 in #graph-traversal
45 downloads per month
67KB
384 lines
Graphina
Graphina is a high-level graph data science library for Rust. It provides the common data structures and algorithms used for analyzing the graphs of real-world networks like social, transportation, and biological networks.
Features
-
Graphs:
- Directed and undirected graphs
- Weighted and unweighted graphs
-
IO:
- Edge list (CSV)
- Adjacency list (TXT)
- GraphML
- GML
- JSON
-
Generators:
- Erdős–Rényi Graph (Random)
- Complete Graph
- Bipartite Graph
- Star Graph
- Cycle Graph
- Watts–Strogatz Graph (Small-World)
- Barabási–Albert Graph (Scale-Free)
-
Algorithms:
- Graph traversal
- Shortest paths
- Minimum spanning tree
- Connected components
- Clustering, partitioning, and community detection
- Centrality
- Graph matching
- Graph visualization
Installation
cargo add graphina
Graphina requires Rust 1.83 or later.
Documentation
See the docs for the latest documentation.
Contributing
See CONTRIBUTING.md for details on how to make a contribution.
License
This project is licensed under either of these:
- MIT License (LICENSE-MIT)
- Apache License, Version 2.0 (LICENSE-APACHE)
Dependencies
~7MB
~115K SLoC