我有问题将水平子图和子图中的节点垂直组织。所有这些(子图和节点)只在一条线上(水平或垂直)。
digraph G {
rankdir = LR;
subgraph cluster_0 {
rankdir = TB;
node [style=filled];
label = "Title 1";
color=black
N1 -> N2;
}
subgraph cluster_1 {
rankdir = TB;
node [style=filled];
label = "Title 2";
color=black
N3 -> N4 -> N5;
}
subgraph cluster_2 {
rankdir = TB;
node [style=filled];
...
}
...
N2 -> N3;
...
N1 [label = "BA_A", fillcolor="green", shape="Msquare"]
N2 [label = "W2", fillcolor="green", shape="octagon"]
N3 [label = "BA_A", fillcolor="green", shape="Msquare"]
N4 [label = "W2", fillcolor="green", shape="octagon"]
N5 [label = "W2_ERROR", fillcolor="red", shape="octagon"]
N6 [label = "W3", fillcolor="green", shape="invtriangle"]
...
}
我也试过{rank=same; N1; N3; ...;}
。这将节点从子图中取出。
答案 0 :(得分:2)
答案 1 :(得分:0)
在您的情况下,我更喜欢从上到下的布局
digraph G {
rankdir = TB;
node [style=filled];
subgraph cluster_0 {
N1 N2
label = "Title 1";
edge [dir = back]
N2 -> N1;
}
subgraph cluster_1 {
N3 N4 N5
label = "Title 2";
edge [dir = back]
N5 -> N4 -> N3;
}
subgraph cluster_2 {
label = "Title 3";
N6
}
N2 -> N3 [constraint=none];
N5 -> N6 [constraint=none];
N1 [label = "BA_A", fillcolor="green", shape="Msquare"]
N2 [label = "W2", fillcolor="green", shape="octagon"]
N3 [label = "BA_A", fillcolor="green", shape="Msquare"]
N4 [label = "W2", fillcolor="green", shape="octagon"]
N5 [label = "W2_ERROR", fillcolor="red", shape="octagon"]
N6 [label = "W3", fillcolor="green", shape="invtriangle"]
}