Graphviz Dot,混合有向和无向
Posted
技术标签:
【中文标题】Graphviz Dot,混合有向和无向【英文标题】:Graphviz Dot, mix directed and undirected 【发布时间】:2012-10-25 13:49:40 【问题描述】:对于我的应用程序,我需要同时(在同一张图上)表示两种关系:一种是对称的,另一种不是。
目标:
理想情况下,这两种关系应导致边缘具有不同的颜色; 对于对称关系,我不希望有双边;有没有办法用 dot 做到这一点?
【问题讨论】:
【参考方案1】:digraph
A; B; C
subgraph Rel1
edge [dir=none, color=red]
A -> B -> C -> A
subgraph Rel2
edge [color=blue]
B -> C
C -> A
【讨论】:
有人知道将 gigraph 与 graph 结合的更简单的解决方案吗? @user1742529 不确定你的意思,这里没有发生这样的组合。可能你对“子图”这个词感到困惑;这只是基本的划分,也就是说这些线应该是蓝色的,那些线应该是橙色的。 @Frungi,对不起。我的意思是:将“digraph”与“graph”结合起来的更简单的解决方案? (graphviz.readthedocs.io/en/stable/api.html#graphviz.Digraph)【参考方案2】:您可以将dir=none
作为边属性传递给无向图连接:
digraph
A; B; C
A -> B
B -> C
C -> A [dir=none]
【讨论】:
以上是关于Graphviz Dot,混合有向和无向的主要内容,如果未能解决你的问题,请参考以下文章