circo

Graphviz circular graph layout engine

TLDR

Render a graph with circular layout to PNG
$ circo -Tpng [input.dot] -o [output.png]
Render to SVG format
$ circo -Tsvg [input.dot] -o [output.svg]
Render to PDF format
$ circo -Tpdf [input.dot] -o [output.pdf]
Read from stdin and output to stdout
$ cat [input.dot] | circo -Tpng > [output.png]
Display available output formats
$ circo -T?

SYNOPSIS

circo [-Tformat] [-o outfile] [-Klayout] [-Gname=value] [-Nname=value] [-Ename=value] [files...]

DESCRIPTION

circo is a Graphviz layout engine that produces circular graph layouts. It identifies biconnected components and arranges nodes on circles, minimizing edge crossings by placing edges on the circle's perimeter when possible.The tool uses a recursive radial algorithm for the block-cutpoint tree. Outerplanar components receive planar layouts. It is suitable for telecommunications networks and cyclic structures.

PARAMETERS

-Tformat

Output format: png, svg, pdf, ps, dot, json, gif, jpg, and more
-o outfile
Write output to file instead of stdout
-Gname=value
Set graph attribute
-Nname=value
Set default node attribute
-Ename=value
Set default edge attribute
-Klayout
Override layout engine
Circo-specific graph attributes:root=nodename
Node to use as root of the layout
mindist=value
Minimum separation between nodes (default: 1.0)
oneblock=true
Draw entire graph around one circle

INSTALL

sudo apt install graphviz
sudo dnf install graphviz
sudo pacman -S graphviz
sudo apk add graphviz
sudo zypper install graphviz
brew install graphviz
nix profile install nixpkgs#graphviz

CAVEATS

Part of the Graphviz package; all layout engines (dot, neato, circo, twopi, fdp, sfdp) share the same command-line interface and are implemented as plugins.

HISTORY

Circo implements algorithms described by Six and Tollis (GD '99, ALENEX '99) and Kaufmann and Wiese (GD '02). Graphviz was originally developed at AT&T Labs Research.

SEE ALSO

dot(1), neato(1), twopi(1), fdp(1), sfdp(1)

RESOURCES

Source code · Documentation