📜  networkx 绘制标签 - Python (1)

📅  最后修改于: 2023-12-03 15:33:06.259000             🧑  作者: Mango

以 NetworkX 绘制标签

NetworkX 是一个用于创建、操作和研究复杂网络的 Python 库。其中一项功能是绘制图形,并为节点和边添加标签。

安装

在开始前,需要先安装 NetworkX。可以通过 pip 安装:

pip install networkx
示例

以下是一个简单的例子,其中使用 NetworkX 绘制无向图,并为节点和边添加标签:

import networkx as nx
import matplotlib.pyplot as plt

G = nx.Graph()

# 添加节点
G.add_node(1, label="A")
G.add_node(2, label="B")
G.add_node(3, label="C")
G.add_node(4, label="D")

# 添加边
G.add_edge(1, 2, label="Edge 1")
G.add_edge(2, 3, label="Edge 2")
G.add_edge(3, 4, label="Edge 3")
G.add_edge(4, 1, label="Edge 4")

# 绘制图形
pos = nx.circular_layout(G)
nx.draw(G, pos, with_labels=True)

# 在每个节点上添加标签
labels = nx.get_node_attributes(G, 'label')
nx.draw_networkx_labels(G, pos, labels)

# 在每条边上添加标签
labels = nx.get_edge_attributes(G, 'label')
nx.draw_networkx_edge_labels(G, pos, edge_labels=labels)

# 显示图形
plt.show()

图形如下所示:

NetworkX labeled graph

结论

通过 NetworkX,你可以轻松创建、操作和研究复杂的网络,并为节点和边添加标签,以方便更好的数据分析和可视化。