如何在graphviz点中为边和节点形状定义双线?

Jud*_*den 26 diagram entity-relationship dot graphviz

如何使用带有双线的graphviz 来设置边和节点的样式,如下图中的"LEGAL"和"TAX DISC"节点所示?

ER图

mar*_*nir 40

可以通过[peripheries=2]在节点上使用来完成双重形状

可以通过为边指定多个颜色来完成双边,用冒号分隔.在这种情况下使用相同的颜色两次:( [color="black:black"]或者,稍微分开它们,做[color="black:invis:black"])

我最终到了那里!对不起这个答案的"进化"性质:-)

所以举个例子

graph G {
    Foo [peripheries=2]
    Foo -- Bar [color="black:white:black"]
}
Run Code Online (Sandbox Code Playgroud)

  • 使用带有非白色背景或物体的颜色可能会导致问题.有关更好的解决方案,请参阅[我的回答](http://stackoverflow.com/a/30759621/543738). (2认同)

L S*_*L S 14

关于将属性用于多个节点轮廓,接受的答案是正确的peripheries.

但是,使用颜色white在节点之间绘制广泛分离的双边边缘并不理想.如果在非白色背景上绘制这样的边缘或穿过非白色物体,则可以看到白线.使用其中一种颜色none或更好invis.要从接受的答案更新部分示例:

graph G {
    Foo [peripheries = 2]
    Foo -- Bar [color = "black:invis:black"]
}
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请参阅Graphviz颜色文档.