Python 保存圖形為pdf(多子圖,不改順序)
因此,對于仍然想保存原始2*2形式圖像的pdf,可以采用方法如下,最終保存的形式如圖3所示。
matplotlib 畫圖時可以做多個子圖,比如圖1,但是問題是如何保存這種圖形為 pdf 格式?
目前多數保存畫為 pdf 的方法主要圍繞的都是如何一次性保存多個圖形到同一個 pdf 文檔,即一個接一個豎排圖像的保存,如圖2所示。
可以參考鏈接:https://matplotlib.org/stable/gallery/misc/rasterization_demo.html#sphx-glr-gallery-misc-rasterization-demo-py
注意:使用 axes 畫圖時需要注意常用設置的轉換,比如
plt.legend() > ax[0,0].legend()
plt.xlabel() > ax[0,0].set_xlabel()
plt.xticks() > ax[0,0].set.xticks()
plt.xlim() > ax[0,0].set_xlim()
...(更多設置參考:https://matplotlib.org/stable/api/axes_api.html#the-axes-class)
import matplotlib.pyplot as plt fig, ax = plt.subplots(2, 2, figsize=(8,6)) # 第一行第一列的圖形 x1 = [1,2,3,4,5] y1 = [5,5.5,7,9,12] ax[0,0].plot(x1,y1,'-ro',ms=5) # 紅色實線連點 # 第一行第二列的圖形 x2 = [1,2,3,4,5] y2 = [3,4,5,7,10] ax[0,1].plot(x2,y2,'-.bo',ms=5) # 藍色虛線連點 # 第二行第一列的圖形 x2 = [1,2,3,4,5] y2 = [3,4,5,7,10] ax[1,0].plot(x2,y2,'-.bo',ms=5) # 藍色虛線連點 # 第二行第二列的圖形 x2 = [1,2,3,4,5] y2 = [3,4,5,7,10] ax[1,1].plot(x2,y2,'-.bo',ms=5) # 藍色虛線連點 plt.savefig("Test.pdf", dpi=300)
![]()
圖1
![]()
圖2
圖3



浙公網安備 33010602011771號