[英]Increase DPI of Matplotlib .show() in Jupyter Notebook
我在 Jupyter Notebook 中使用 Matplotlib 來顯示地圖圖像。 代碼如下所示:
%matplotlib inline
imgpath = './map.png'
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
import numpy as np
from PIL import Image
img = Image.open(imgpath)
print(img.size)
width, height = img.size
# img.thumbnail((width * 2,height * 2), Image.ANTIALIAS) # resizes image in-place
imgplot = plt.imshow(img)
plt.savefig('test.png', dpi = 300)
問題是,雖然plt.savefig('test.png', dpi = 300)
看起來不錯(因為我將 dpi 更改為 300),但筆記本中顯示的圖像分辨率太低,我無法做出任何判斷它,並且plt.imshow(img, dpi = 300)
不起作用:
所以我想知道是否有辦法改變 Jupyter Notebook 中顯示的圖像的分辨率?
在筆記本的開頭添加:
import matplotlib as mpl
mpl.rcParams['figure.dpi'] = 300
就是這樣 !
如果您的屏幕具有 Retina 顯示屏,請在筆記本中的%matplotlib inline
(或繪圖前的其他位置)之后添加以下行
%config InlineBackend.figure_format = 'retina'
這將增加您地塊的Jupyter筆記本電腦中的顯示分辨率。
使用此答案中提出的解決方案存在將 DPI 應用於將在筆記本中創建的所有其他圖形的缺點。
這在大多數情況下是可以的,但如果您只需要為一個數字設置 DPI 值,您可以按如下方式進行:
plt.imshow(img)
plt.gcf().set_dpi(300)
plt.show()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.