您好,登錄后才能下訂單哦!
這篇文章給大家介紹怎么在matplotlib中利用plt.savefig() 對圖片進行輸出,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
要讓程序自動將圖表保存到文件中,代碼為:
plt.savefig('squares_plot.png', bbox_inches='tight')
第一個實參指定要以什么樣的文件名保存圖表,這個文件將存儲到scatter_squares.py所在的目錄中。
第二個實參指定將圖表多余的空白區域裁減掉。如果要保留圖表周圍多余的空白區域,可省略這個實參。
但是發現matplotlib使用plt.savefig()保存的圖片
周圍有一圈空白。那么如何去掉該空白呢?
首先,關閉坐標軸顯示:
plt.axis('off')
但是,這樣只是關閉顯示而已,透明的坐標軸仍然會占據左下角位置,導致輸出的圖片偏右。
要想完全去掉坐標軸,需要改為以下代碼:
plt.axis('off') fig = plt.gcf() fig.set_size_inches(7.0/3,7.0/3) #dpi = 300, output = 700*700 pixels plt.gca().xaxis.set_major_locator(plt.NullLocator()) plt.gca().yaxis.set_major_locator(plt.NullLocator()) plt.subplots_adjust(top = 1, bottom = 0, right = 1, left = 0, hspace = 0, wspace = 0) plt.margins(0,0) fig.savefig(out_png_path, format='png', transparent=True, dpi=300, pad_inches = 0)
即可完成去掉空白。
注:如果不采用 subplot_adjust + margin(0,0),而是在fig.savefig()的參數中添加bbox_inches = 'tight',也可以達到去除空白的效果; 但是,這樣會導致對圖片輸出大小的設置失效。
關于怎么在matplotlib中利用plt.savefig() 對圖片進行輸出就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。