您當前的位置:首頁 > 攝影

如何儲存matplotlib或seaborn繪製的影象(可以設定dpi)?

作者:由 寧萌時光 發表于 攝影時間:2022-07-13

最近我製作了一個 seaborn視覺化教程,播放之後收到一位同學的提問:學了教程後知道怎麼用 seaborn 繪圖了,那麼,

繪圖之後如何儲存圖片呢?能不能在儲存時設定圖片的 dpi 值?

對於第一個問題,我之前用過的儲存圖片方法是:

截圖:使用Snipaste軟體或電腦截圖工具,詳細操作方法歡迎閱讀我的文章:Windows系統的幾種螢幕截圖方法 。

或者將執行之後(有繪圖結果)的 Jupyter Notebook 檔案存成 Markdown 文件:在選單欄依次選擇:File>Download as >Markdown(。md),生成的 Markdown 文件會帶有匯出的圖片。

但是,第二個問題需要設定 dpi 值,那麼, dpi 是什麼呢?

DPI ( Dots Per Inch,每英寸點數)是一個度量單位,指每英寸長度上可顯示或輸出點的數量。DPI 引數一般用於衡量印表機、滑鼠等裝置的解析度。具體來說,dpi 值越高,解析度越高,圖片就越清晰。

如何在儲存圖片時設定 dpi 值呢?

在網上查找了一下,發現要用到 matplotlib 中的 savefig 函式。使用語句

plt。savefig(“圖片名”,dpi=設定值)

可以儲存並匯出相應解析度的圖片(。 png格式),在 Jupyter Notebook 檔案所在的資料夾中就能看到。如果要儲存成其它格式,如 。svg, 。jpg 或 。pdf,把格式寫在檔名後即可,如:

plt。savefig(“圖片名。svg”,dpi=設定值)

下面我們透過一個具體的例子實踐一下:

首先引用相應的庫:

import

numpy

as

np

import

pandas

as

pd

import

matplotlib。pyplot

as

plt

import

seaborn

as

sns

%

matplotlib

inline

載入 seaborn 自帶的一個數據集,這個資料集記錄了企鵝的一些特徵,可以用於判斷企鵝種類:

penguin_df=sns。load_dataset(“penguins”)

然後,繪製資料集的變數“bill_length_mm”(企鵝的嘴長)的箱式圖,並且儲存圖片,設定 dpi 值為300:

sns

boxplot

data

=

penguin_df

x

=

“bill_length_mm”

plt

savefig

“boxplot01”

dpi

=

300

savefig 函式預設儲存圖片為 。png 格式,與

plt。savefig(“boxplot01。png”,dpi=300)

效果相同。

我們還可以將繪圖儲存為 。jpg 或 。svg 或 。pdf 格式,以及設定需要的dpi 值,比如:

sns

boxplot

data

=

penguin_df

x

=

“bill_length_mm”

plt

savefig

“boxplot01。jpg”

dpi

=

150

plt

savefig

“boxplot02。svg”

dpi

=

300

plt

savefig

“boxplot03。pdf”

dpi

=

600

下面這張圖就是上面的幾個輸出結果之一,哈哈,猜猜是哪一個呢?效果真不錯,你也快去試試吧!

如何儲存matplotlib或seaborn繪製的影象(可以設定dpi)?

使用savefig函式儲存的圖片

參考文章:

1。DPI:

https://

baike。baidu。com/item/DP

I/908073

2。plt。savefig() 函式:Python之matplotlib基礎

標簽: DPI  savefig  plt  圖片  儲存