networkx如何显示链路的长度的排序
时间: 2024-02-01 15:16:08 浏览: 134
可以使用NetworkX的`draw_networkx_edge_labels`函数来显示链路的长度排序。以下是一个示例代码:
```python
import networkx as nx
import matplotlib.pyplot as plt
# 创建一个简单的图
G = nx.Graph()
G.add_edge('A', 'B', weight=3)
G.add_edge('A', 'C', weight=1)
G.add_edge('B', 'C', weight=2)
# 获取每条边的权重,并按升序排序
edge_labels = nx.get_edge_attributes(G, 'weight')
sorted_edge_labels = sorted(edge_labels.items(), key=lambda x: x[1])
# 绘制图形
pos = nx.spring_layout(G)
nx.draw(G, pos)
nx.draw_networkx_edge_labels(G, pos, edge_labels=edge_labels, label_pos=0.3, font_size=10, font_color='r')
plt.show()
```
此代码将绘制一个简单的图,其中每条边都有一个权重。`get_edge_attributes`函数用于获取每条边的权重,然后我们使用`sorted`函数按升序对它们进行排序。最后,我们使用`draw_networkx_edge_labels`函数将排序后的权重标签添加到图形中。
阅读全文