📅  最后修改于: 2023-12-03 15:34:12.671000             🧑  作者: Mango
本文介绍了 Python 中如何使用第三方库 networkx
和 matplotlib
绘制树图,并结合实例进行可视化。
需要先安装 networkx
和 matplotlib
库:
!pip install networkx
!pip install matplotlib
以下示例将按照如下树图绘制:
1
/ \
2 3
/ \ \
4 5 6
import networkx as nx
import matplotlib.pyplot as plt
# 创建树图
G = nx.DiGraph()
# 添加节点
for i in range(1, 7):
G.add_node(i)
# 添加边
G.add_edge(1, 2)
G.add_edge(1, 3)
G.add_edge(2, 4)
G.add_edge(2, 5)
G.add_edge(3, 6)
# 绘制树图
pos = nx.spring_layout(G)
nx.draw_networkx_nodes(G, pos)
nx.draw_networkx_edges(G, pos)
nx.draw_networkx_labels(G, pos)
plt.show()
运行后,将得到以下树图:
可以通过修改节点形状、大小和颜色等方式来定制树图。以下示例将节点形状调整为圆形,大小为 100,颜色设置为紫色:
import networkx as nx
import matplotlib.pyplot as plt
# 创建树图
G = nx.DiGraph()
# 添加节点
for i in range(1, 7):
G.add_node(i)
# 添加边
G.add_edge(1, 2)
G.add_edge(1, 3)
G.add_edge(2, 4)
G.add_edge(2, 5)
G.add_edge(3, 6)
# 绘制树图
pos = nx.spring_layout(G)
nx.draw_networkx_nodes(G, pos, node_shape="o", node_size=100, node_color="purple")
nx.draw_networkx_edges(G, pos)
nx.draw_networkx_labels(G, pos)
plt.show()
运行后,将得到以下树图:
本文介绍了使用第三方库 networkx
和 matplotlib
绘制树图,包括常规绘制和定制样式。可以通过修改节点样式、大小和颜色等方式实现更加灵活的树图可视化效果。