我在graphviz中绘制了一个二分图,我希望它有两列由直线连接的节点(以匹配其他地方使用的样式)。我几乎可以得到我想要的东西(见图片),但是柱子太靠近,这使得边缘不必要地难以理解。
我试图在前两个节点之间添加一个非常低重量的连接,希望它能将两个子图分开,但这样做不起作用(并且经常弄乱其余的布局)。有没有办法将右侧的节点列进一步向右移动。
这是一个显示我正在看到的问题的例子
这是我用来生成此图的代码
graph G {
splines=false;
node[shape=circle, style=filled]
subgraph cluster_1 {
subgraph cluster_1r {
a12 [label="a",fillcolor=lightgrey]
b12 [label="b",fillcolor=lightgrey]
c12 [label="c",fillcolor=lightgrey]
d12 [label="d",fillcolor=lightgrey]
e12 [label="e",fillcolor=lightgrey]
a12--b12--c12--d12--e12 [style=invis]
}
subgraph cluster_1l {
a11 [label="a",fillcolor=white]
b11 [label="b",fillcolor=white]
c11 [label="c",fillcolor=white]
d11 [label="d",fillcolor=white]
e11 [label="e",fillcolor=white]
a11--b11--c11--d11--e11 [style=invis]
}
c11--a12 [constraint=false]
c11--b12 [constraint=false]
d11--b12 [constraint=false]
e11--a12 [constraint=false]
e11--b12 [constraint=false]
}
}
答案 0 :(得分:3)
在两列之间添加一个不可见的节点可以正常工作。基本上我添加了这个
subgraph cluster_1m {
color=invis;
a12m [style=invisible]
}
在两个子图之间。这感觉非常粗糙,所以任何更优雅的解决方案都会受到欢迎。