matplotlib畫圖
matplotlib是基於Python語言的開源項目,旨在爲Python提供一個數據繪圖包。使用matplotlib繪圖的原理,主要就是理解figure(畫布)、axes(座標系)、axis(座標軸)三者之間的關係。其中figure就是畫圖的背景板。axes是可以在畫布上分不同區域畫多個圖形。axis則是對相應axes的座標軸。
一個畫布上畫簡單折線圖
在一個畫布上畫簡單折線圖
import matplotlib.pyplot as plt
x=[1,2,3,5]
y=[23,43,25,66]
plt.title('this is title') #設置標題
plt.xlabel('Time') #設置x軸標籤
plt.ylabel('Money')
plt.plot(x,y,'r') #畫折線圖圖,設置圖形顏色
#plt.bar(x,y) #畫柱狀圖,
#plt.scatter(x,y) #畫散點圖
#plt.savefig('figname') #存儲圖片默認png格式
plt.show()
一個畫布上畫多個圖形
一種方法是先創建畫布,然後在畫布上add_subplot()
import matplotlib.pyplot as plt
x=[1,2,3,5]
y=[23,43,25,66]
figure=plt.figure()
figure.suptitle('this is title') #設置標題
axes1=figure.add_subplot(3,1,1)
axes2=figure.add_subplot(3,1,2)
axes3=figure.add_subplot(3,1,3)
axes1.plot(x,y,'r') #畫折線圖圖,設置圖形顏色
axes1.set_xlabel('Time')
axes1.set_ylabel('Money')
axes2.bar(x,y) #畫柱狀圖,
axes3.scatter(x,y) #畫散點圖
plt.savefig('figname') #存儲圖片默認png格式
plt.show()
另外一個方法是plt.subplots直接返回畫布和座標系。
import matplotlib.pyplot as plt
x=[1,2,3,5]
y=[23,43,25,66]
fig,axs=plt.subplots(1,3,figsize=(9,3))
axs[0].plot(x,y,'r') #畫折線圖圖,設置圖形顏色
axs[0].set_xlabel('time')
axs[0].set_ylabel('Money')
axs[1].bar(x,y) #畫柱狀圖,
axs[2].scatter(x,y) #畫散點圖
plt.savefig('figname') #存儲圖片默認png格式
plt.show()
matplotlib的文檔非常成熟,想要什麼圖都能畫出來。參考https://matplotlib.org/gallery/index.html