違いを簡単に確認できるように、同じ imshow プロットで 2 つの異なるデータ セットを比較したいと思います。私の最初の本能は、カラーマップの色を透明にすることです(特に低い値)が、これを機能させることができませんでした:
from matplotlib.colors import colorConverter
import matplotlib.pyplot as plt
import numpy as np
# create dummy data
zvals = np.random.rand(100,100)*10-5
zvals2 = np.random.rand(100,100)*10-5
# generate the transparent colors
color1 = colorConverter.to_rgba('white',alpha=0.0)
color2 = colorConverter.to_rgba('black',alpha=0.8)
# make the colormaps
cmap1 = mpl.colors.LinearSegmentedColormap.from_list('my_cmap',['green','blue'],256)
cmap2 = mpl.colors.LinearSegmentedColormap.from_list('my_cmap2',[color1,color2],256)
img2 = plt.imshow(zvals,interpolation='nearest',cmap=cmap1,origin='lower')
img3 = plt.imshow(zvals2,interpolation='nearest',cmap=cmap2,origin='lower')
plt.show()
エラーはありませんが、2 番目のプロットの白と黒には透明度がありません。また、通常の plt.plot の状況で colorConverter メソッドを使用して色を設定しようとしたところ、正しい色が表示されましたが、色も透明になりませんでした。
imshow プロットをオーバーレイ/比較する方法に関する追加のアドバイスをいただければ幸いです。