【揭秘Matplotlib子圖創建】輕鬆掌握高效繪圖技巧

提問者:用戶LKMW 發布時間: 2025-06-08 02:38:24 閱讀時間: 3分鐘

最佳答案

媒介

Matplotlib是一個富強的Python庫,用於數據可視化。其中,子圖(Subplot)功能容許在同一畫布上繪製多個圖表,這對比較跟分析數據非常有效。本文將深刻探究Matplotlib中的子圖創建方法,幫助妳輕鬆控制高效畫圖技能。

子圖的不雅點

子圖是Matplotlib中的一種不雅點,它容許在一個畫布(Figure)中創建多個獨破的圖表(Axes)。這些圖表可能是差別範例的,如折線圖、散點圖、柱狀圖等,並且可能獨破地調劑大小、色彩、標籤等屬性。

創建子圖的方法

Matplotlib供給了兩種重要的子圖創建方法:addsubplot()addaxes()

1. addsubplot()

addsubplot()方法經由過程指定網格的行、列跟子圖的地位索引來創建子圖。以下是addsubplot()方法的語法:

plt.subplot(nrows, ncols, index)
  • nrows:子圖的行數。
  • ncols:子圖的列數。
  • index:子圖的地位索引,從1開端。

2. addaxes()

addaxes()方法供給了更多的機動性,容許用戶指定子圖的地位跟大小。以下是addaxes()方法的語法:

fig.add_axes([left, bottom, width, height])
  • leftbottomwidthheight:子圖在畫布中的地位跟大小,範疇從0到1。

示例代碼

以下是一個利用addsubplot()addaxes()方法創建子圖的示例:

import matplotlib.pyplot as plt
import numpy as np

# 創建數據
x = np.linspace(0, 10, 100)
y1 = np.sin(x)
y2 = np.cos(x)

# 創建一個包含兩個子圖的圖
fig, axs = plt.subplots(2)

# 在第一個子圖中繪製 sin(x)
axs[0].plot(x, y1, 'r')
axs[0].set_title('Sine Function')

# 在第二個子圖中繪製 cos(x)
axs[1].plot(x, y2, 'b')
axs[1].set_title('Cosine Function')

# 利用addaxes()方法創建一個自定義地位的子圖
ax3 = fig.add_axes([0.4, 0.4, 0.2, 0.2])
ax3.plot([1, 2, 3], [1, 4, 9], 'g')
ax3.set_title('Custom Axes')

# 表現圖形
plt.show()

總結

Matplotlib的子圖創立功能為數據可視化供給了極大年夜的便利。經由過程機動應用addsubplot()addaxes()方法,妳可能輕鬆地在同一畫布上創建多個圖表,從而更好地展示跟分析數據。

相關推薦