4

重みのリストのプロパティの名前をnetworkxのgraphviz_layoutに渡す方法を誰もが見つけることができません。このようなもの:

nx.spring_layout(G, weight='weight.sum')

しかし、とnx.graphviz_layout(G, ...)。多分誰かが知っているでしょうか?

4

1 に答える 1

5

私が正しければ、graphviz レイアウトのエッジの重みとして使用するエッジ属性を指定する必要があります。NetworkX docsから、これが可能であることがわかりません。

ただし、この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_layoutとして渡すことができます。

nx.graphviz_layout(g, prog='dot', args='-Eweight=4')
于 2012-05-23T05:54:41.010 に答える