簡體   English   中英

如何在兩個不同的圖上將plt.imshow()的顏色圖設置為相同的值

[英]How to Make a Color Map for plt.imshow() be set to the same values on two different plots

考慮以下。 我有兩個情節:

fig = plt.figure()
plt.imshow(nonfour, cmap='gray')

在此處輸入圖片說明

fig = plt.figure()
plt.imshow(np.abs(four), cmap='gray')

在此處輸入圖片說明

這兩個圖是使用數組nonfour和np.abs(four)創建的。 創建每個圖時,使用每個數組的最小值和最大值設置顏色圖。

我想做的是從第一個圖生成一個cmap並將其用作第二個圖的cmap

(即第二個圖的顏色圖將基於我的第一個圖的最大值和最小值)。

正如imshow指出的, imshow使用關鍵字vminvmax來控制顏色圖的比例。 您可以使用get_clim()方法獲取第一個圖的(自動確定的)值:

# Create your first plot
img = plt.imshow(nonfour, cmap='gray')

# Extract vmin and vmax
vmin, vmax = img.get_clim()

# Create your second plot using these limits
plt.imshow(np.abs(four), cmap='gray', vmin=vmin, vmax=vmax)

另外,您也可以使用set_clim()方法:

img = plt.imshow(nonfour, cmap='gray')
img2 = plt.imshow(np.abs(four), cmap='gray')
img2.set_clim(img.get_clim())

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM