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

Python 如何使用mathplot imshow显示一个白色像素,python,matplotlib,Python,Matplotlib,我想用mathplot显示一个白色像素: import numpy as np import matplotlib.pyplot as plt plt.imshow([[0.99]], cmap='gray', interpolation='nearest') plt.show() 但它显示黑色。为什么?问题是,您只给imshow一个值,因此颜色比例围绕该值设置,并将其绘制为比例的最小值,因此为黑色 指定vmin和vmax,如图所示: 更重要的是,您需要将vmax映射为白色,作为您给imsho

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

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

但它显示黑色。为什么?

问题是,您只给imshow一个值,因此颜色比例围绕该值设置,并将其绘制为比例的最小值,因此为黑色

指定vmin和vmax,如图所示:

更重要的是,您需要将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()
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()