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

标签 matlab colors matrix

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

我尝试使用颜色图,如果所有三个值都在矩阵中,它就可以正常工作, 但是当只剩下一个或两个值时,颜色会发生变化。

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

非常感谢!

最佳答案

只需创建您自己的只有三个可能值的颜色图:

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

b 给出:

enter image description here

关于MATLAB:如何在矩阵中设置颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14511249/

相关文章:

c - 从 C 语言的 ASCII 格式文件中解析数据

matlab - 在矩阵中包含预定行号的 NaN 行。

algorithm - 什么是找到矩阵中所有局部最小值(最大值)的有效算法?

matlab - 计算两幅图像之间的模糊核

Vim 语法高亮 "hi def link"改变某些映射的颜色

perl - Perl 和 Matlab 之间的数据/IO 通信

language-agnostic - 给定 R、G、B 三元组和因子 F,我如何计算颜色的 “watermark” 版本?

python - 如何选择正确的颜色来使用 OpenCV 对图像进行阈值处理?

matlab - 包含方括号的字符串的排序函数问题

matlab - 对于 Matlab,从 xlsx 导入数据,如何获取第一行作为变量名称,以及该列的其余部分作为变量名称的数据