在matlab中操作“图像”和“pcolor”函数,用于可视化矩阵

时间:2011-09-14 20:53:21

标签: matlab matrix plot visualization matlab-figure

我有矩阵,我希望通过这些矩阵来了解它们包含的值。但是我默认使用的函数image给出的结果很差。在可视化之前,我必须使用适当的值手动缩放矩阵。 我的矩阵按值1缩放:my matrix scaled by value 1

image(Breceive(1+(ii-1)*20:20+(ii-1)*20,:)*1)

我的矩阵按值10 my matrix scaled by value 10

缩放
image(Breceive(1+(ii-1)*20:20+(ii-1)*20,:)*10)

我的矩阵按值50 my matrix scaled by value 50

缩放
image(Breceive(1+(ii-1)*20:20+(ii-1)*20,:)*50)

我的矩阵按值10000 my matrix scaled by value 10000

缩放
image(Breceive(1+(ii-1)*20:20+(ii-1)*20,:)*10000)

我的矩阵值为10000 my matrix with value 10000 added

image(Breceive(1+(ii-1)*20:20+(ii-1)*20,:)+10000)

但是使用函数pcolor,无论值pcolor result如何,缩放或加法都不会改变呈现的矩阵的颜色但实际上我们看到不同数量的行被着色(此处为6,但之前为7) )

pcolor(Breceive(1+(ii-1)*20:20+(ii-1)*20,:))

我认为图片应该是规模不变的?它预先规范化了数据。 pcolor 可以信任它正在对颜色值进行适当的比例转换吗?是否有一些参数或方法可以使图像保持稳定?为什么pcolor没有绘制相同的信息?

1 个答案:

答案 0 :(得分:1)

image(C)使用C的元素直接索引图的颜色图。

pcolor(C)线性缩放C的元素以填充图形的颜色图,然后对其进行索引。

您可以使用imagesc生成缩放图像,该图像将以与pcolor相同的方式保持不变。