#graphviz #graph #dot


A library for writing the Graphviz DOT graph language

4 releases

0.1.3 Nov 7, 2022
0.1.2 Jul 3, 2021
0.1.1 Jun 19, 2021
0.1.0 Jun 18, 2021

#91 in Visualization

Download history 739/week @ 2023-10-31 1056/week @ 2023-11-07 816/week @ 2023-11-14 1094/week @ 2023-11-21 1075/week @ 2023-11-28 886/week @ 2023-12-05 1467/week @ 2023-12-12 1254/week @ 2023-12-19 423/week @ 2023-12-26 662/week @ 2024-01-02 728/week @ 2024-01-09 686/week @ 2024-01-16 800/week @ 2024-01-23 253/week @ 2024-01-30 784/week @ 2024-02-06 767/week @ 2024-02-13

2,708 downloads per month
Used in 9 crates (7 directly)

MIT license

663 lines

Graphviz DOT Writer

This library is a (hopefully) ergonomic library for plotting graphs. It outputs the Graphviz language DOT. Graphs written in DOT can then be easily converted to SVG or other image formats using the Graphviz dot executable.

The structs in this library leverage the Rust type system and lifetimes to ensure that it's harder to use them to construct an invalid DOT graph. It's important to note that this means you need to make sure that child structs go out of scope before using their parents again. This is to make sure that the Drop writes the closing brackets correctly.

Getting started

Have a look at the API on docs.rs for examples and how to get coding.

Non Goals

This library only writes DOT in a strongly typed way. It doesn't read DOT or render DOT into image files.


Contributions welcome, please feel free to open issues and pull requests. I've only just realised (7/11/22) that I hadn't enabled issues on the github repository, so my apologies to anyone who tried to post issues in the past! Drop me (DrGabble) a message if you have any questions on anything at all, always happy to help.

No runtime deps