欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

python 畫結構圖

林子帆1年前8瀏覽0評論

Python 是一種強大的編程語言,由于其易于學習、易于閱讀和易于編寫的特點,被越來越多的程序員所喜愛。在Python 3.x 中,我們可以使用第三方庫 Matplotlib 來生成各種各樣的圖表,包括結構圖。下面將介紹如何使用Python 畫結構圖。

首先,我們需要導入相關的庫:

import matplotlib.pyplot as plt
import networkx as nx

其中,Matplotlib 是用于繪制圖表的主要庫,而 NetworkX 是用于創建和操作圖形結構的庫。

接下來,我們可以使用 NetworkX 來創建一個空圖,并添加節點和邊:

G = nx.DiGraph()  # 創建有向圖
G.add_node("A")
G.add_nodes_from(["B", "C", "D", "E"])  # 添加多個節點
G.add_edge("A", "B", weight=0.6)
G.add_edge("A", "C", weight=0.2)
G.add_edge("C", "D", weight=0.1)
G.add_edge("C", "E", weight=0.7)

這段代碼表示創建了一個有向圖,其中有五個節點,分別為 A、B、C、D、E,其中 A 與 B 之間有一條邊,邊的權重為 0.6,A 和 C 之間有一條邊,權重為 0.2,C 和 D 之間有一條邊,權重為 0.1,C 和 E 之間有一條邊,權重為 0.7。

接下來,我們可以使用 Matplotlib 來對圖形進行繪制:

pos = nx.spring_layout(G)  # 定義節點位置
nx.draw_networkx_nodes(G, pos, node_color="r", node_size=500)  # 繪制節點
nx.draw_networkx_edges(G, pos, width=1.0, alpha=0.5)  # 繪制邊
nx.draw_networkx_labels(G, pos, font_size=10, font_family="sans-serif")  # 繪制標簽
labels = nx.get_edge_attributes(G, "weight")  # 獲取邊的權重
nx.draw_networkx_edge_labels(G, pos, edge_labels=labels, font_size=8)  # 繪制邊的權重值
plt.axis("off")  # 關閉坐標軸
plt.show()  # 顯示圖形

這段代碼表示使用 NetworkX 提供的 spring_layout 函數來定義節點位置,然后使用 draw_networkx_nodes、draw_networkx_edges 和 draw_networkx_labels 函數分別繪制節點、邊和標簽,并使用 get_edge_attributes 函數獲取邊的權重,再使用 draw_networkx_edge_labels 函數來繪制邊的權重值。

最后,我們通過調用 axis 函數關閉坐標軸,并調用 show 函數來顯示圖形。

綜上所述,Python 語言在畫結構圖方面也有其獨到之處,使用 Matplotlib 和 NetworkX 庫可以輕松地生成各種各樣的結構圖。