要繪制樹形圖和網(wǎng)絡(luò)圖,可以使用Matplotlib庫的子庫networkx來實(shí)現(xiàn)。以下是一個(gè)簡單的示例:
import matplotlib.pyplot as plt
import networkx as nx
# 創(chuàng)建一個(gè)有向圖
G = nx.DiGraph()
# 添加節(jié)點(diǎn)
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()
# 繪制網(wǎng)絡(luò)圖
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()
在這個(gè)例子中,我們首先創(chuàng)建了一個(gè)有向圖,然后添加節(jié)點(diǎn)和邊。接下來我們使用nx.spring_layout()
函數(shù)來定義節(jié)點(diǎn)的位置,并使用nx.draw()
函數(shù)來繪制樹形圖和網(wǎng)絡(luò)圖。最后調(diào)用plt.show()
函數(shù)顯示圖形。