MATLAB:如何在矩阵中设置颜色

时间:2013-01-24 21:36:40

标签: matlab colors matrix

我有一个矩阵N * N,有三个不同的值,例如0,0.5,1。 如何在屏幕上打印一个图像,每个值代表不同的颜色? 重要:矩阵是一个循环,因此值可能会改变(我希望每次迭代都打印矩阵)。

我尝试使用colormap,如果所有三个值都在矩阵中,它工作正常, 但是当仅保留一个或两个值时,颜色会发生变化。

我希望它如何工作:值为0,0.5,1的矩阵在屏幕上打印一个矩阵,每个单元格包含0个黑色,0.5个绿色,1个黄色。

非常感谢!

2 个答案:

答案 0 :(得分:5)

只需创建一个只有三个可能值的色块图:

a = [1 0.5 0;1 .5 0;0.5 0 1];
b = [1 0 1;1 1 0;0 0 1];
cmap = [0,0,0;0,1,0;1,1,0];
clims = [0 1];
imagesc(a,clims); colormap(cmap);
imagesc(b,clims); colormap(cmap);

a给出:

a

b给出:

enter image description here

答案 1 :(得分:0)

我会尝试想象。或任何其他颜色的缩放。从灰度开始。 RGB将更加复杂