您的位置:宽带测速网 > 编程知识 > Matplotlib怎么绘制树形图和网络图

Matplotlib怎么绘制树形图和网络图

2025-06-27 17:05来源:互联网 [ ]

要绘制树形图和网络图,可以使用Matplotlib库的子库networkx来实现。以下是一个简单的示例:

import matplotlib.pyplot as pltimport networkx as nx# 创建一个有向图G = nx.DiGraph()# 添加节点G.add_node("A")G.add_node("B")G.add_node("C")G.add_node("D")# 添加边G.add_edge("A", "B")G.add_edge("A", "C")G.add_edge("B", "D")G.add_edge("C", "D")# 绘制树形图pos = nx.spring_layout(G)nx.draw(G, pos, with_labels=True, node_size=2000, node_color='lightblue', font_size=10, font_weight='bold', edge_color='gray')plt.show()# 绘制网络图G = nx.Graph()G.add_edge("A", "B")G.add_edge("A", "C")G.add_edge("B", "D")G.add_edge("C", "D")pos = nx.spring_layout(G)nx.draw(G, pos, with_labels=True, node_size=2000, node_color='lightblue', font_size=10, font_weight='bold', edge_color='gray')plt.show()

在这个例子中,我们首先创建了一个有向图,然后添加节点和边。接下来我们使用nx.spring_layout()函数来定义节点的位置,并使用nx.draw()函数来绘制树形图和网络图。最后调用plt.show()函数显示图形。