matlab的颜色映射colormap

Colormap 颜色映射

1、首先说明 颜色图  这个概念:

在matlab中用我们描述一种颜色通常用RGB(红绿蓝)的形式,当然在计算机中RGB取值都在0到1的实数,强度必须在 [0, 1] 范围内,值 0 表示无颜色,值 1 表示全强度。那么红色用[1 0 0]表示,蓝色用[0 0 1]表示,等等,那么这样的宽度是3的,包含元素为0与1之间的矩阵被称作 颜色图, 简单说颜色图就是可以为任意长度,但是宽度必须为3的矩阵,而且矩阵每个元素都是在0到1的实数,因此可以用它来表示一组颜色,通常用这一组颜色作为修饰当前的图形颜色。

在以前的matlab版本中,matlab默认的颜色图是 jet,jet 是 64*3的矩阵,在命令窗口中 打入 jet 即可查看这些矩阵元素;在2014版本以后 默认颜色图是  parula 颜色如下面:

从 R2018a 开始用户要考虑图窗和坐标区的颜色设置,因为从 R2018a 开始,如果为图窗设置颜色图,则图窗中的坐标区和图将使用相同的颜色图。

2、matlab内置的颜色图:

在matlab中已经为我们内置了几组图,如下

以上的每一组颜色都是64*3的矩阵形式存储在matlab中,这样在我们为当前的窗口设定颜色的时候就可以调用这些颜色,

通常用Colormap,例如colormap default 装入默认的颜色映射,colormap(cool)装入青兰到洋红色的颜色图。

当然我们想查看matlab某种内置的颜色映射的对应的矩阵时,可以使用函数 pcolor 、来显示一个颜色图。

n=10
colormap(jet)
pcolor([1:n+1;1:n+1])

 

3、colormap的一般应用

大多数绘图函数meshsurffillpcolor和它们的各种变形函数可以用颜色映象colormap函数来调整当前图窗的颜色。

例如下面例子:

 [x,y,z]=peaks;
 surfl(x,y,z);
 colormap(jet) % 应用 jet颜色图

colormap(winter) %应用winter颜色图

      

4 不同的子图应用不同的颜色图

只要标记每个子图的坐标轴对象,然后对不同的坐标轴对象应用不同的颜色图即可。

figure(1) %窗口对象1
ax1 = subplot(2,1,1);%获得第一个子图的坐标轴对象
[x,y,z]=peaks;
mesh(x,y,z);
colormap(ax1,spring)%对第一个子图应用spring颜色图
ax2 = subplot(2,1,2);%获得第二个子图的坐标轴对象
[x,y,z]=peaks;
mesh(x,y,z);
colormap(ax2,winter)%对第二个子图应用winter颜色图

结果如下图:

 

  • 14
    点赞
  • 104
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值