Cheatsheet: Graphviz
Last updated 2026-09-24
Minimal complete examples
Small valid directed graph
Small valid undirected graph
Nodes
Node in default style

Node stroke color

Node filled color

Node label
Node shape
Edges
Edge in default style
Edge label
Edge styles
Edge color
Layout and ranking
Direction and spacing controls
Keep nodes on the same rank
Change layout engine (CLI)
Defaults
Set default style for all nodes
Set default style for all edges
Layout engines
dot -- hierarchical layout (default), best for directed acyclic-ish graphs like flowcharts and dependency trees
neato -- force-directed (spring model) layout for undirected graphs without a clear hierarchy
fdp -- force-directed layout optimized for larger graphs (faster than neato)
circo -- circular layout, good for showing cyclic structure
twopi -- radial layout from a chosen root node
Output formats
Render to SVG (crisp at any zoom, inspectable/editable markup)
Render to PNG (fixed-size raster)
Render to PDF
List every output format your build of Graphviz supports
Common pitfalls
Quote node IDs with spaces
Clusters need prefix cluster_
Use strict mode to remove duplicate edges


