In DOT
için dilin GraphViz
, bir bağımlılık diyagramı temsil etmeye çalışıyorum. Bir kapsayıcı içinde düğümlere sahip olabilmem ve düğümleri ve / veya kapları diğer düğümlere ve / veya kaplara bağımlı hale getirebilmem gerekiyor.
Kaplarımı subgraph
temsil etmek için kullanıyorum . Düğüm bağlantısı gayet iyi çalışıyor, ancak altgrafları nasıl bağlayacağımı anlayamıyorum.
Aşağıdaki programı göz önüne alındığında, bağlanmak gerekiyor cluster_1
ve cluster_2
bir okla, ama denedim şey yerine kümelerin bağlayan yeni düğümler oluşturur:
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
. Bağlantılı örnek ve her ikisinin de çalışması (buradaki örnekteki son satırın etiket değil alt bölüm adlarını kullanması gerekir ve grafik için satır uzunluklarını eklemek güzel olabilir); olduğu gibi biraz sıkı).
fdp
ve kaynağı kopyalayarak / yapıştırarak satırlar kenarlara değil alt bölümün merkezine bağlanır. .Dot dosyasını OmniGraffle içinde açarsanız, düzgün bağlanırlar neato
ve dot
her ikisi de küme için gereksiz düğümler oluşturur.