Python 如何将列表(或numpy数组或矩阵)转换为图像?
我有一张大桌子(或者矩阵,如果你愿意的话)。我想通过制作一个图像来可视化这个表,其中每个像素对应于表中的一个单元(因此,表中的行和列对应于图像中像素的“行”和“列”) 单元格中的值已经对应于颜色(例如,Python 如何将列表(或numpy数组或矩阵)转换为图像?,python,image,numpy,matplotlib,data-visualization,Python,Image,Numpy,Matplotlib,Data Visualization,我有一张大桌子(或者矩阵,如果你愿意的话)。我想通过制作一个图像来可视化这个表,其中每个像素对应于表中的一个单元(因此,表中的行和列对应于图像中像素的“行”和“列”) 单元格中的值已经对应于颜色(例如,[255,0,0]是对应于红色的值)。换句话说,表中的每个单元格都包含一个表示颜色的三维向量 该表可以表示为列表列表列表或三维numpy数组。您可以使用matplotlib的函数执行此操作。您只需将数组从0-255标准化为0-1,然后就可以为imshow您的MxNx3数组馈电 下面是一个简单的例子
[255,0,0]
是对应于红色的值)。换句话说,表中的每个单元格都包含一个表示颜色的三维向量
该表可以表示为列表列表列表或三维
numpy
数组。您可以使用matplotlib的
函数执行此操作。您只需将数组从0-255
标准化为0-1
,然后就可以为imshow
您的MxNx3
数组馈电
下面是一个简单的例子:
import matplotlib.pyplot as plt
import numpy as np
fig,ax=plt.subplots(1,subplot_kw={'aspect':'equal'})
# A small 3x3 sample array
imarray=np.array([
[[255,0,0],[0,255,0],[0,0,255]],
[[255,255,0],[0,255,255],[255,0,255]],
[[255,255,255],[127,127,127],[0,0,0]]
])
# Normalise the data to between 0 and 1
imarray = imarray.astype('float')/255.
# plot the array
ax.imshow(imarray,interpolation='nearest')
plt.show()