大家怎么也找不到传递的权重networkx到graphviz_layout的列表属性名称。 事情是这样的:
nx.spring_layout(G, weight='weight.sum')
但nx.graphviz_layout(G, ...)
也许有人会知道吗?
大家怎么也找不到传递的权重networkx到graphviz_layout的列表属性名称。 事情是这样的:
nx.spring_layout(G, weight='weight.sum')
但nx.graphviz_layout(G, ...)
也许有人会知道吗?
如果我有你的权利,你要指定边缘属性作为边的权重来使用的graphviz的布局。 从NetworkX文档我不明白,这是可能的。
然而, weight
的属性是由在graphviz的布局算法中使用。 这是这样说的:
重量
边缘的重量。 在点,重量较重,较短的,直更垂直边缘。 对于其它布局,较大的权重鼓励布局以使边缘长度更接近由指定LEN属性。
有了这个,你可以设置边的权重为网络中的每个边缘:
g = nx.Graph()
g.add_edge(1, 2, {'weight': 4})
要么
g.add_edge(1, 2)
g.edge[1][2]['weight'] = 4
要么
g[1][2]['weight'] = 4
如果你想设置的边缘默认权,你可以通过这个作为参数传递给graphviz的程序要在使用graphviz_layout
:
nx.graphviz_layout(g, prog='dot', args='-Eweight=4')