如何使用mathplot imshow显示一个白色像素

时间:2017-03-10 11:53:45

标签: python matplotlib

我想用mathplot显示一个白色像素:

import numpy as np
import matplotlib.pyplot as plt
plt.imshow([[0.99]], cmap='gray', interpolation='nearest')
plt.show()

但它显示黑色。为什么呢?

1 个答案:

答案 0 :(得分:1)

问题是你只给imshow一个值,所以颜色标度设置在该值附近,它被绘制为标度的最小值(因此是黑色)。

指定vminvmax,如图here所示:

import numpy as np
import matplotlib.pyplot as plt
plt.imshow([[0.99]], cmap='gray', interpolation='nearest', vmin=0, vmax=1)
plt.show()

更重要的是,您需要vmax,它将被映射为白色,为您提供的值imshow,并且vmin小于该值:

import numpy as np
import matplotlib.pyplot as plt

max_value = np.random.random()
min_value = -max_value # for instance

plt.imshow([[max_value]], cmap='gray', interpolation='nearest',
           vmin=min_value, vmax=max_value)
plt.show()