兩種畫圖接口
Matplotlib有兩種畫圖接口:一個是類似MATLAB風格接口,另一個是功能更強大的面向對象接口。
MATLAB風格接口
這種接口是有狀態的(stateful)。這個接口更偏向數學家的思維,不需要太多的編程背景就能掌握。
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 10, 100)
# 準備開始畫圖
plt.figure()
# 共2個子圖,選中第1行第1列的子圖
plt.subplot(2, 1, 1)
plt.plot(x, np.sin(x))
# 共2個子圖,選中第1行第2列的子圖
plt.subplot(2, 1, 2)
plt.plot(x, np.cos(x))
面向對象接口
面向對象接口更加強大,可以更靈活地控制我們的圖形。代碼如下:
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 10, 100)
# 準備開始畫圖
fig, ax = plt.subplots(2)
# 在每個子圖上分別繪製
ax[0].plot(x, np.sin(x))
ax[1].plot(x, np.cos(x))