web-dev-qa-db-ja.com

networkxを使用してグラフにノード名を表示するにはどうすればよいですか?

私はコードを持っています

import networkx as nx
import matplotlib.pyplot as plt

G = nx.DiGraph()

G.add_nodes_from([1, 2, 3, 4])
G.add_edges_from([(1, 2), (2, 1), (2, 3)])

nx.draw(G)
plt.savefig("graph.png")
plt.show()

そして、それは次のグラフを描きます: enter image description here

ただし、ラベルを表示する必要があります。グラフのノード内に数値と単語(1、2、3、4)を表示するにはどうすればよいですか?

11
Macabeus

Nx.Draw()を使用してwith_labels = Trueパラメーターを呼び出す必要があります。

import networkx as nx
import matplotlib.pyplot as plt

G = nx.DiGraph()

G.add_nodes_from([1, 2, 3, 4])
G.add_edges_from([(1, 2), (2, 1), (2, 3)])

nx.draw(G,with_labels=True)
plt.savefig("graph.png")
plt.show()

Font_size、font_colorなどを呼び出すこともできます。

https://networkx.github.io/documentation/latest/reference/drawing.html

24
ryanmc