Python-为什么 imshow() 会为非零数组生成空白图像?

Python-Why does imshow() yield a blank image for a non-zero array?

我的目标是在 Python 中将二维数组显示为图像。该数组不包含零元素,因此我希望图像中 imshow() 根据数组值自动设置色标。但是,当我 运行 代码时,图像是空白的。

csv 文件是:https://ufile.io/urk5m

import numpy as np
import matplotlib.pyplot as plt

data_ = np.loadtxt(open("new_file.csv", "rb"), delimiter=",")
plt.imshow(data_)

我的结果是这样的:https://imgur.com/jMNnF0h

永远记住,但实际上永远记住,图像适用于 8 位整数。这就是为什么有 2^8 种灰色阴影以及为什么最常见的 CS 颜色数量是 (2^8)^3= 1670 万。颜色。 3 因为有 3 个颜色通道 - RGB,每个通道有 256 种色调。

每个人都在用它计数,主要是图像处理库。

因此,请始终确保将正确的矩阵数据类型传递给图像处理函数:

image_8bit = np.uint8(data_)
plt.imshow(image_8bit)
plt.show()