将特定值分配给Matplotlib图

时间:2017-04-06 12:28:06

标签: python numpy matplotlib

我在numpy数组中有两个值。 0,1。我希望确保1总是黑色,当我绘制数组时,0总是灰色。

如何在matplotlib中执行此操作?

谢谢

1 个答案:

答案 0 :(得分:3)

假设您想要绘制图像图(plt.imshow()),您可以选择像“gray_r”这样的色彩图,其中白色为最低色,黑色为最高色,灰色位于中间。如果现在将图像绘图规范化为-1到1之间的值,则数组的0值将对应于色彩图的中间(灰色),1将对应于色彩图的上端(黑色)。

import matplotlib.pyplot as plt
import numpy as np; np.random.seed(0)

a = np.random.randint(0,2, size=(12,25))

plt.imshow(a, cmap="gray_r", vmin=-1, vmax=1)

plt.show()

enter image description here