Как настроить цветовую шкалу (радиометрическое разрешение) в Python matplotlib.pyplot.imshow
Я пытаюсь построить изображения со значениями [0,255] и [0,20], но plt.imshow не отображает их в одной цветовой шкале (радиометрическое разрешение).
У меня есть 2 изображения со значениями [0, 255] (0 = темный, 255 = светлый) с именами data1 и data2, и разница между этими массивами не так уж велика. Когда я пытаюсь сохранить разницу между двумя изображениями и сохранить ее в виде массива с именем diff, значения пикселей этого массива составляют около [0, 20] (0 = темный, 20 = яркий).
Где я создаю свои массивы
np.random.seed(19680801)
data1 = np.random.randint(256, size=(5, 5))
data2 = (data1 + 20 * np.random.random((5, 5)))//1
Где я рассчитываю их различия
diff = data2 - data1
Где я их заговор
fig, (ax1, ax2, ax3) = plt.subplots(ncols=3)
ax1.set_title("Data #1")
ax2.set_title("Data #2")
ax3.set_title("Diff")
ax1.imshow(data1, cmap = "gray")
ax2.imshow(data2, cmap = "gray")
ax3.imshow(diff , cmap = "gray")
fig.tight_layout()
Но я хочу построить эти массивы так, как если бы их радиометрическое разрешение было одинаковым. Как я могу это исправить?