7

networkx で重複しないエッジ ラベルを描画するにはどうすればよいですか? オプションを使用するとscale見栄えが良くなりますが、エッジ ラベルはまだ重なっています。たとえば、

ここに画像の説明を入力

関連するソースコードは次のとおりです。

# build a graph
G.add_edge(u, v, r=value)

# plot the graph
pos = nx.spring_layout(G, scale=3)

nx.draw(G, pos)

edge_labels = nx.get_edge_attributes(G,'r')
nx.draw_networkx_edge_labels(G, pos, edge_labels = edge_labels)

plt.savefig(filename)
4

1 に答える 1

4

spring_layoutのドキュメントは次のとおりです。パラメータの 1 つがk.

k(float (default=None)) – ノード間の最適な距離。None の場合、距離は 1/sqrt(n) に設定されます。n はノードの数です。ノードをさらに離すには、この値を増やします。

spring_layoutそのため、k=5/math.sqrt(G.order())または距離を増やす他の値を使用して呼び出します。

于 2016-01-06T12:06:19.407 に答える