MNIST Matplotlib:显示颜色

Posted

技术标签:

【中文标题】MNIST Matplotlib:显示颜色【英文标题】:MNIST Matplotlib: showing color 【发布时间】:2018-09-22 05:06:26 【问题描述】:

我正在探索 MNIST 数据集,它是灰度手写数字图像的集合。我正在使用 Matplotlib 从数据集中绘制随机图像:

plt.subplot(221)
plt.imshow(X_train[1],cmap='gray')
plt.subplot(222)
plt.imshow(X_train[100])
plt.subplot(223)
plt.imshow(X_train[4559])
plt.subplot(224)
plt.imshow(X_train[50000])
plt.show()

我的问题是,当我没有明确设置 cmap='gray' 时,为什么图像会显示为彩色。

它们不应该都默认显示为灰度图像,因为这是它们的真实性质吗?

【问题讨论】:

没有所谓的“真实本性”。根据您展示的内容,您需要突出显示数据的不同属性。你甚至可以在大范围内拥有不同的动态。在彩色地图上查看此条目matplotlib.org/users/colormaps.html matplotlib 中的默认颜色图是“viridis”。这是一个带有颜色的颜色图,对于您想要绘制彩色表示的大多数数据来说,这被认为是有用的。如果您的项目不是这种情况,您可以使用第一张图片中的灰度颜色图。 【参考方案1】:

这是因为默认情况下,imshow() 使用 'viridis' 作为 cmap。

【讨论】:

以上是关于MNIST Matplotlib:显示颜色的主要内容,如果未能解决你的问题,请参考以下文章

Matplotlib图表上输出中文(汉字)减号问题

为啥 matplotlib 中的图例不能正确显示颜色?

使用 OpenCV 或 Matplotlib/Pyplot 可视化 MNIST 数据集

Matplotlib 颜色条未显示 2 个离散值的标签

python---matplotlib

Python安装matplotlib