了解Colormap'jet'到rgb的转换,matlab

时间:2014-04-04 12:10:04

标签: matlab

我想了解matlab的colormap。

  

colormap(map)JET的HSV变体       JET(M)是HSV(M)的变体,是含有M-by-3基质的       CONTOUR,SURF和PCOLOR使用的默认色图。       颜色以深蓝色开始,颜色范围为深蓝色       蓝色,青色,绿色,黄色和红色,并以深红色结束。       JET本身与当前数字的长度相同       颜色映射。

这意味着它显示0 =深蓝色,1 =深色。

但是 为0

f=0
cm = colormap(jet(256));% should I take 256
colorID = max(1, sum(f> [0:1/length(cm(:,1)):1])); 
myColor= cm(colorID, :) 

myColor =          0 0 0.50

为什么不(0 0 1)%darkblue

  f=1
    cm = colormap(jet(256));% returns the current color map
    colorID = max(1, sum(f> [0:1/length(cm(:,1)):1])); 
    myColor= cm(colorID, :) % returns your color

myColor =     0.50 0 0

为什么不(1 0 0)%黑暗

1 个答案:

答案 0 :(得分:0)

红色不是由RGB值[1 0 0]定义的。很多RGB值会被人们称为红色。蓝色也是如此。此外,jet colormap的帮助文本指出:

  

颜色以深蓝色开始,......以深红色结束。

嗯,我会说RGB颜色[0 0 0.5]对我来说看起来是深蓝色,并且RGB颜色[0.5 0 0]对我来说看起来是深红色。因此色彩图与描述一致,不是吗?

如果你问为什么MathWorks选择喷射色图以深蓝而不是蓝色开始,并且它以暗红色而不是红色结束,那么我只会问"为什么不应该'是吗?"。