当我使用 matplotlib 的 imshow() 方法来表示一个小的 numpy 矩阵时,它最终会在像素之间进行一些平滑处理。有什么办法可以禁用这个吗?它使我的数字在演示中具有误导性。
上图是一个 28x28 的图像,所以我应该看到代表每个像素的单色大方块(因为 matlab 在使用 imagesc() 时会显示它)。但相反,像素似乎与相邻像素模糊。有没有办法禁用这种行为?
当我使用 matplotlib 的 imshow() 方法来表示一个小的 numpy 矩阵时,它最终会在像素之间进行一些平滑处理。有什么办法可以禁用这个吗?它使我的数字在演示中具有误导性。
上图是一个 28x28 的图像,所以我应该看到代表每个像素的单色大方块(因为 matlab 在使用 imagesc() 时会显示它)。但相反,像素似乎与相邻像素模糊。有没有办法禁用这种行为?
有一个插值选项,用于imshow
控制如何以及是否将插值应用于矩阵的渲染。如果你试试
imshow(array, interpolation="nearest")
你可能会得到更像你想要的东西。举个例子
A=10*np.eye(10) + np.random.rand(100).reshape(10,10)
imshow(A)
和....相比
A=10*np.eye(10) + np.random.rand(100).reshape(10,10)
imshow(A, interpolation="nearest")