Graph 点图语言-如何自动生成双向边?
下面是我的点图的一个非常简化的示例:Graph 点图语言-如何自动生成双向边?,graph,graphviz,dot,Graph,Graphviz,Dot,下面是我的点图的一个非常简化的示例: strict digraph graphName { A->B B->A } 这创造了 相反,我希望在a和B之间显示一条边,但带有双箭头。我知道如何将双箭头作为全局选项: strict digraph graphName { edge [dir="both"] A->B B->A } 但这看起来很难看,而且不是我所有的边缘都应该是双头的 如果我对图形做更多的处理,自己检测双重引用,并用一条边替换两条边,看起来就可以了。但我
strict digraph graphName {
A->B
B->A
}
这创造了
相反,我希望在a和B之间显示一条边,但带有双箭头。我知道如何将双箭头作为全局选项:
strict digraph graphName {
edge [dir="both"]
A->B
B->A
}
但这看起来很难看,而且不是我所有的边缘都应该是双头的
如果我对图形做更多的处理,自己检测双重引用,并用一条边替换两条边,看起来就可以了。但我不想再多做这一步
strict digraph graphName {
A->B [dir="both"]
}
有更好的解决方案吗?那么“专注=真实”怎么样
strict digraph graphName {
concentrate=true
A->B
B->A
}
从:
如果为true,则使用边缘集中器。这
将多条边合并为一条边
并使部分平行边
共享他们的部分路径。后者
此功能在外部尚不可用
点的
您只需使用:
A -> B [dir=both]
为我使用标签,我正在运行旧版本。如果有帮助。。。这对我不起作用,因为它将边缘合并在一起,但只在末端放了一个箭头。然后我尝试“严格有向图”。。。这很傻,但这正是OP想要的,太大了@Phillw它也不适用于我,我只使用一个箭头获得边缘。我正在使用pygraphviz,我尝试了
pgv.AGraph(directed=True,strict=True)
,但它也不起作用,我又得到了两条边。。。有什么建议吗?这为我节省了一些多余的行,我正在使用它以及适当的顶级答案。你不需要在“两者”周围加引号@NoahSussman它不可能是被接受的答案,因为它实际上没有回答问题;)