Graphviz中的任何功能都能做到吗? 如果没有,任何其他可以做到这一点的免费软件?
答案 0 :(得分:5)
鉴于你想在graphviz中渲染图形,我建议使用python库networkx来计算图形补码。 Networkx是一个优秀的图论分析库;它还与graphviz有无缝接口。
(图形补充的粗略定义:想象一个图形A',其具有与A相同的节点但具有所有可能的边缘,即,每个节点都连接到每个其他节点;现在从A'移除边缘A;剩下的是A,A')的补充
import networkx as NX
G = NX.gnm_random_graph(10, 10) # create a random graph w/ 10 nodes, 10 edges
G_cmpl = NX.complement(G) # get the complement of graph 'G'
# to render it in graphviz:
NX.write_dot(G_cmpl, "somefilename.dot")
答案 1 :(得分:0)
自己计算补数,然后绘制。