我尝试用点画图,我有以下问题
节点b
的标签与a
到b
的边缘重叠。有没有办法以某种方式移动这个标签以避免这种情况?
这是我用来生成图片的代码(使用dot
)
digraph A {
rankdir=LR;
center=true; margin=0.3;
nodesep=1.5; ranksep=0.5;
node [shape=point, height=".2", width=".2"];
a [xlabel="a"];
b [xlabel="b"];
c [xlabel="c"];
a -> b -> c;
a -> c;
}
这种情况经常发生,而且很烦人(这里也一样,但有边缘):
据我所知,这是因为xlabel
在所有事情都已经完成之后被放置了,但我想知道是否有可能帮助它 - 也就是说它在标签需要的位置放置。
答案 0 :(得分:5)
您不能这样做 - 您想为xlabel提供位置信息,但graphviz目前(2016-01-25)不允许这样做。 graphviz错误跟踪器中有open feature request用于此功能;它被描述为:
这基本上是允许用户提供x标签位置信息的功能请求。对于附加到节点的xlabels,坐标应相对于节点位置。类似的功能可以用于边缘的头部和尾部标签。我认为边缘的xlabels可以基于边缘的“中心”。