有時候的們使用plt.plot(),有時候使用ax.plot(),這二者畫圖有區別嗎
首先,來看看Matplotlib畫圖的具體構成:
如果將Matplotlib繪圖和我們平常畫畫相類比,可以把figure想象成一張紙(一般被稱之為畫布),axes代表的則是紙中的一片區域
回到上面說的,plt.plot()和ax.plot()的區別:
import matplotlib.pyplot as plt import math import numpy as np x=np.arange(1,10) y=x**2 #plt.plot() plt.figure() plt.plot(x,y) plt.show() #ax.plot() fig,ax=plt.subplots() ax.plot(x,y) plt.show()
結果是一樣的,區別在於:
(1)plt.plot()先生成一個figure畫布,然后在這個畫布上隱式生成的畫圖區域上畫圖
(2)ax.plot()同時生成了fig和ax對象,然后用ax對象在其區域上畫圖,推薦使用該方式