Na DOT
linguagem para GraphViz
, estou tentando representar um diagrama de dependência. Eu preciso ter nós dentro de um contêiner e poder tornar nós e / ou contêineres dependentes de outros nós e / ou contêineres.
Estou usando subgraph
para representar meus contêineres. A vinculação de nó funciona muito bem, mas não consigo descobrir como conectar subgráficos.
Dado o programa abaixo, preciso conectar-me cluster_1
e cluster_2
com uma seta, mas qualquer coisa que tentei cria novos nós em vez de conectar os clusters:
digraph G {
graph [fontsize=10 fontname="Verdana"];
node [shape=record fontsize=10 fontname="Verdana"];
subgraph cluster_0 {
node [style=filled];
"Item 1" "Item 2";
label = "Container A";
color=blue;
}
subgraph cluster_1 {
node [style=filled];
"Item 3" "Item 4";
label = "Container B";
color=blue;
}
subgraph cluster_2 {
node [style=filled];
"Item 5" "Item 6";
label = "Container C";
color=blue;
}
// Renders fine
"Item 1" -> "Item 2";
"Item 2" -> "Item 3";
// Both of these create new nodes
cluster_1 -> cluster_2;
"Container A" -> "Container C";
}
fdp
. O exemplo vinculado e o acima de ambos funcionam (a última linha do exemplo aqui precisa usar os nomes dos subgráficos e não o rótulo e pode ser bom incluir comprimentos de linha no gráfico); está um pouco apertado como está).
fdp
v2.28.0 e copiando / colando a fonte do exemplo, as linhas se conectam ao centro do subgráfico, não às bordas. Se você abrir o .dot em OmniGraffle estão conectados corretamente, enquanto neato
e dot
tanto criar nós supérfluos para o cluster.