如何使用matplotlib.pyplot.imshow绘制灰度图像



我的数据是numpy.array格式的2D图像。通过以下代码:

fig = plt.figure()
ax = fig.add_subplot(111)
ax.imshow(visu_base)
plt.show()

我从Python得到一个彩色图像。但是,我怎么用灰度显示呢?

答案在imshow命令的api文档中[1]

cmap : Colormap, optional, default: None
    If None, default to rc image.cmap value. cmap is ignored when X has RGB(A) information

imshow接受一个可选参数cmap,该参数控制颜色映射。

这里可以找到matplotlib[2]中定义的可用颜色映射的概述

你可以这样做:

import matplotlib as mpl
fig = plt.figure()
ax = fig.add_subplot(111)
ax.imshow(visu_base, cmap=mpl.cm.gray)
plt.show()

最新更新