petgraph
KLighD
Our great sponsors
petgraph | KLighD | |
---|---|---|
7 | 1 | |
2,648 | 24 | |
4.8% | - | |
7.0 | 7.9 | |
2 days ago | 13 days ago | |
Rust | Java | |
Apache License 2.0 | Eclipse Public License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
petgraph
-
Borrow Checking, RC, GC, and the Eleven () Other Memory Safety Approaches
Are you just trying to throw shade on Rust?
https://doc.rust-lang.org/std/collections/struct.LinkedList....
> NOTE: It is almost always better to use Vec or VecDeque because array-based containers are generally faster, more memory efficient, and make better use of CPU cache.
https://docs.rs/petgraph 78 M downloads
-
The Hunt for the Missing Data Type
I used to think that since graphs are such a broad datastructure that can be represented in different ways depending on requirements that it just made more sense to implement them at a domain-ish level.
Then I saw Petgraph [0] which is the first time I had really looked at a generic graph library. It's very interesting, but I still have implemented graphs at a domain level.
[0] https://github.com/petgraph/petgraph
-
Many of the typical "Algorithms" as plain Rust implementation
For graph algorithms specifically, also consider looking at the implementations in petgraph.
-
2-way Weak
Take a look at: https://github.com/petgraph/petgraph
-
autograph v0.1.0
Render the backward "graph" using petgraph for visualization and debugging purposes.
-
Another graph library :)
I second the need for quickcheck-style tests. I implemented a matching algorithm in petgraph, and quickcheck discovered so many bugs on non-trivial graphs. Thanks to it, I am now much more confident that it is indeed correct.
-
Why Rust for Robots?
petgraph: Graph data structure library, compatible with Rust
KLighD
-
The Hunt for the Missing Data Type
>Graph drawing tools
It's hard
Graphviz-like generic graph-drawing library. More options, more control.
https://eclipse.dev/elk/
Experiments by the same team responsible for the development of ELK, at Kiel University
https://github.com/kieler/KLighD
Kieler project wiki
https://rtsys.informatik.uni-kiel.de/confluence/display/KIEL...
Constraint-based graph drawing libraries
https://www.adaptagrams.org/
JS implementation
https://ialab.it.monash.edu/webcola/
Some cool stuff:
HOLA: Human-like Orthogonal Network Layout
https://ialab.it.monash.edu/~dwyer/papers/hola2015.pdf
Confluent Graphs demos: makes edges more readable.
https://www.aviz.fr/~bbach/confluentgraphs/
Stress-Minimizing Orthogonal Layout of Data Flow Diagrams with Ports
https://arxiv.org/pdf/1408.4626.pdf
Improved Optimal and Approximate Power Graph Compression for Clearer Visualisation of Dense Graphs
https://arxiv.org/pdf/1311.6996v1.pdf
What are some alternatives?
autograph - Machine Learning Library for Rust
rosrust - Pure Rust implementation of a ROS client library
optimization-engine - Nonconvex embedded optimization: code generation for fast real-time optimization
prepona - A graph crate with simplicity in mind
nphysics - 2 and 3-dimensional rigid body physics engine for Rust.
graph-force - Python library for embedding large graphs in 2D space, using force-directed layouts.
openrr - Open Rust Robotics
ros2_rust - Rust bindings for ROS 2
rustros_tf - A port of ROS's TF library to rust
rust-gpu - 🐉 Making Rust a first-class language and ecosystem for GPU shaders 🚧
Rust - All Algorithms implemented in Rust