以下是一个示例代码,演示了如何使用边的权重作为标签:
import networkx as nx
import matplotlib.pyplot as plt
# 创建一个有权重的图
G = nx.Graph()
G.add_edge('A', 'B', weight=4)
G.add_edge('B', 'C', weight=2)
G.add_edge('C', 'D', weight=1)
G.add_edge('D', 'A', weight=3)
# 获取边的权重作为标签
edge_labels = nx.get_edge_attributes(G, 'weight')
# 绘制图形
pos = nx.spring_layout(G)
nx.draw_networkx_nodes(G, pos)
nx.draw_networkx_edges(G, pos)
nx.draw_networkx_labels(G, pos)
nx.draw_networkx_edge_labels(G, pos, edge_labels)
# 显示图形
plt.axis('off')
plt.show()
这个示例中,我们首先创建了一个带有权重的图,然后使用nx.get_edge_attributes
函数获取边的权重作为标签。最后,我们使用nx.draw_networkx_edge_labels
函数将标签绘制在图上。