MATLAB颜色的使用

来源:互联网 发布:c语言解惑刘振安 编辑:程序博客网 时间:2024/04/29 04:51

如何使用、显示、修改和如何创建用户自己的颜色映象。然后,阐述在一个 图形窗口 中仿真多个颜色映象的技术或只使用颜色映象的一部分的技术。最后,讨论照明模型并提供例子。

颜色映象理解

       MATLAB 有一个叫颜色映象 的数据结构来代表颜色值。颜色映象定义为一个有三列和若干行的矩阵。利用 0 到 1 之间的数,矩阵的每一行都代表了一种色彩。任一行的数字都指定了一个 RGB 值,即红、黄、蓝三种颜色的强度,形成一种特定的颜色。一些有代表性的 RGB 值在下表中给出。

Red(红) Green(绿) Blue(蓝) 颜色 0 0 0 黑 1 1 1 白 1 0 0 0 1 0 绿 0 0 1 1 1 0 1 0 1 洋红 0 1 1 青蓝 0.667 0.667 1 天蓝 1 0.5 0 橘黄 0.5 0 0 深红 0.5 0.5 0.5 灰色
 

有十个 MATLAB 函数产生预定的颜色映象:

hsv 色彩饱和值 hot 从黑到红到黄道白 cool 青蓝和洋红的色度 pink 粉红的彩色度 bone 带一点蓝色的灰度 jet hsv的一种变形(以蓝色开始和结束) copper 线性铜色度 prim 三棱镜。交替为红,橘黄,黄,绿,天蓝 flag 交替为红,白,蓝,黑 gray x线性灰度
 

按缺省,上面所列的各个颜色映象产生一个 64 × 3 的矩阵,指定了 64 种颜色 RGB 的描述。这些函数都接受一个参量来指定所产生矩阵的行数。比如 hot(m) 产生一个 m × 3 的矩阵,它包含的 RGB 颜色值的范围从黑经过红、橘红和黄,到白。

       大多数计算机在一个 8 位的硬件查色表中一次可以显示 256 种颜色,当然有些计算机的显示卡可以同时显示更多的颜色。这就意味着在不同的图中,一般一次可以用三或四个 64 × 3 的颜色映象。如果使用了更多的颜色映象输入项,计算机必须经常在它的硬件查色表中调出输入项。比如,当在画 MATLAB 图形时背景图案发生了变化,就是发生了这种情况。所以,除非计算机有一次显示更多种颜色的显示卡,最好任何一次所用的颜色映象输入项数都小于 256 。

颜色映象使用 :

语句 colormap(M ) 将矩阵 M 作为当前图形窗口所用的颜色映象。例如, colormap ( cool ) 装入了一个有 64 个输入项的 cool 颜色映象。

colormap  default 装入了缺省的颜色映象( hsv ) 。

       函数 plot 、 plot3 、 contour 和 contour3 不使用颜色映象,它们使用列在 plot 颜色和线形表中的颜色。而大多数其它绘图函数,比如 mesh 、 surf 、 fill 、 pcolor 和它们的各种变形函数,使用当前的颜色映象。

接受 颜色参量 的绘图函数中的 颜色参量 通常采用以下三种形式之一:

  • ( 1 )字符串。代表 plot 颜色或线型表中的一种颜色,比如, ’ r ‘ 代表红色;
  • ( 2 )三个输入的行向量。它代表一个单独的 RGB 值,比如 [.25   .50   .75] ;
  • ( 3 )矩阵。如果 颜色参量 是一个矩阵,其元素作了调整,并把它们用作当前颜色映象的下标。

    函数 pcolor 可以用来显示一个颜色映象。例如:

    » n=32;

    » colormap(hsv(n))

    » pcolor([1:n+1;1:n+1] ’ )

    surf5

    细节请访问:Matlab颜色使用

    原创粉丝点击