Graphviz (Português)
Status de tradução: Este artigo é uma tradução de Graphviz. Data da última tradução: 2026-08-23. Você pode ajudar a sincronizar a tradução, se houver alterações na versão em inglês.
De acordo com a Wikipédia:
- "Graphviz (nome encurtado de Graph Visualization Software) é um pacote de ferramentas de código aberto [...] para desenhar grafos especificados em scripts em linguagem DOT."
Instalação
Visualizadores:
- KGraphViewer — Visualizador de arquivos Graphviz de grafo DOT do KDE.
- xdot.py — Visualizador interativo para grafos escrito na linguagem DOT do Graphviz (construído em cima do GTK).
Fonte
Você precisa instalar uma fonte para incluir strings (i.e., texto) no grafo. Para informações sobre como instalar fontes, veja Fonts.
Para ver quais fontes estão disponíveis:
$ fc-list
Para ver quais fontes o dot está usando:
$ dot example.gv -Tpng -o foo.png -v 2>&1 | grep font
Exemplo
Dica Para desenvolver grafos interativamente, tente o vimdot(1).
Aqui está um exemplo de arquivo dot.
exemplo.gv
digraph graph_name {
graph [
charset = "UTF-8";
label = "sample graph",
labelloc = "t",
labeljust = "c",
bgcolor = "#343434",
fontcolor = white,
fontsize = 18,
style = "filled",
rankdir = TB,
margin = 0.2,
splines = spline,
ranksep = 1.0,
nodesep = 0.9
];
node [
colorscheme = "rdylgn11"
style = "solid,filled",
fontsize = 16,
fontcolor = 6,
fontname = "Migu 1M",
color = 7,
fillcolor = 11,
fixedsize = true,
height = 0.6,
width = 1.2
];
edge [
style = solid,
fontsize = 14,
fontcolor = white,
fontname = "Migu 1M",
color = white,
labelfloat = true,
labeldistance = 2.5,
labelangle = 70
];
// definir node
alpha [shape = box];
beta [shape = box];
gamma [shape = Msquare];
delta [shape = box];
epsilon [shape = trapezium];
zeta [shape = Msquare];
eta;
theta [shape = doublecircle];
// definir edge
alpha -> beta [label = "a-b", arrowhead = normal];
alpha -> gamma [label = "a-g"];
beta -> delta [label = "b-d"];
beta -> epsilon [label = "b-e", arrowhead = tee];
gamma -> zeta [label = "g-z"];
gamma -> eta [label = "g-e", style = dotted];
delta -> theta [arrowhead = crow];
zeta -> theta [arrowhead = crow];
}
Para gerar uma imagem PNG deste arquivo:
$ dot -Tpng exemplo.gv -o exemplo.png