一、基本用法
plt.savefig是matplotlib中用於保存圖形的函數。基本用法如下:
import matplotlib.pyplot as plt plt.plot([0,1,2,3,4],[0,1,4,9,16]) plt.savefig('myplot.png')
這段代碼會繪製一條曲線,並將圖形保存在當前工作目錄中的myplot.png文件中。
plt.savefig的第一個參數是保存的文件名,可以是帶有文件路徑的完整路徑。如:
plt.savefig('/home/user/myplot.png')
除了png格式,還可以保存為pdf、ps、eps、svg等格式。要保存為pdf格式,只需要將文件名的擴展名改成pdf即可。
二、調整圖形大小
如果默認的圖形大小不滿意,可以通過figsize參數來調整。該參數的單位是英寸,可以是一個二元組或列表。如:
plt.plot([0,1,2,3,4],[0,1,4,9,16]) plt.savefig('myplot.png', figsize=(6,4))
這段代碼會將圖形寬度設為6英寸,高度設為4英寸。
三、調整分辨率
如果保存的圖形在不同的設備上需要顯示,可能需要調整分辨率。可以使用dpi參數來指定分辨率。如:
plt.plot([0,1,2,3,4],[0,1,4,9,16]) plt.savefig('myplot.png', dpi=300)
這段代碼會將分辨率設為300,使得圖形在高分辨率屏幕上顯示效果更好。
四、保存為多個子圖
如果要保存為多個子圖,可以使用plt.subplots函數來創建。如:
import matplotlib.pyplot as plt fig, ax = plt.subplots(2, 2) ax[0, 0].plot([0, 1, 2, 3, 4], [0, 1, 4, 9, 16]) ax[0, 1].scatter([0, 1, 2, 3, 4], [0, 1, 4, 9, 16]) ax[1, 0].bar([0, 1, 2, 3, 4], [0, 1, 4, 9, 16]) ax[1, 1].pie([0, 1, 4, 9, 16]) plt.savefig('myplots.png')
這段代碼會將4個子圖保存在同一個文件中。
五、調整邊緣空白
默認情況下,保存的圖形會有一定的邊緣空白。可以通過調整plt.tight_layout函數的參數來去除邊緣空白。如:
import matplotlib.pyplot as plt fig, ax = plt.subplots(2, 2) ax[0, 0].plot([0, 1, 2, 3, 4], [0, 1, 4, 9, 16]) ax[0, 1].scatter([0, 1, 2, 3, 4], [0, 1, 4, 9, 16]) ax[1, 0].bar([0, 1, 2, 3, 4], [0, 1, 4, 9, 16]) ax[1, 1].pie([0, 1, 4, 9, 16]) plt.savefig('myplots.png') plt.tight_layout(pad=0)
這段代碼會去除邊緣空白,使得4個子圖緊湊排列。
六、保存為透明背景
如果要將繪製的圖形疊加到其他圖形之上,可以將背景設置為透明。可以使用transparent參數來指定透明度。如:
import matplotlib.pyplot as plt plt.plot([0, 1, 2, 3, 4], [0, 1, 4, 9, 16]) plt.savefig('myplot.png', transparent=True)
這段代碼會將保存的圖形背景設為透明。
七、保存為灰度圖
如果要將保存的圖形轉換為灰度圖,可以將cmap參數設置為’gray’。如:
import matplotlib.pyplot as plt plt.plot([0, 1, 2, 3, 4], [0, 1, 4, 9, 16]) plt.savefig('myplot.png', cmap='gray')
這段代碼會將保存的圖形轉換為灰度圖。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/151962.html