爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 33607|回复: 23

[秀图] [求助]Matlab中怎么做自定义色图(colormap)?

[复制链接]

新浪微博达人勋

发表于 2012-6-4 11:37:10 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
如题,我想做下图的色标图,我有颜色对应的RGB组合数组,作为matlab新手的我不知道怎么实现,谢谢指导!
shp_demo3.png
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-6-4 11:49:20 | 显示全部楼层
首先colormap('default')
然后假设你的坐标为(x,y)
由于color为三位 每一维颜色取值在0~1之间 分母为225 分子为0~225
然后自己进行定义 color(x,y,1)=1.;
color(x,y,2)=1.;
color(x,y,3)=1.;
你试试看 这种方法比较笨拙 是直接读取x,y数值然后进行定义颜色的
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2012-6-4 12:32:06 | 显示全部楼层
本帖最后由 abd 于 2012-6-4 12:32 编辑

非常感谢你的回复!
请问,假如我想用以下3个颜色 1:(0.753 , 0.000 , 0.000 ),2:( 1.000 , 0.000 , 1.000 ):3:( 0.600 , 0.333 , 0.788),怎么让这三个颜色对应于雷达回波值为10dbz,20dbz,30dbz啊?
上面你给我写的三行color(x,y,1)=1.; color(x,y,2)=1.; color(x,y,3)=1.; 后面的1 是什么意思啊?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-6-4 12:49:53 | 显示全部楼层
首先 你要筛选出那几个值的的坐标 在这些坐标上运用我上面给你的语句就可以啦
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-6-4 12:53:28 | 显示全部楼层
abd 发表于 2012-6-4 12:32
非常感谢你的回复!
请问,假如我想用以下3个颜色 1:(0.753 , 0.000 , 0.000 ),2:( 1.000 , 0.000 ...

1也是一种取值 好像是白色吧 就是225/225
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2012-6-4 13:02:40 | 显示全部楼层
本帖最后由 abd 于 2012-6-4 13:03 编辑
huang96169 发表于 2012-6-4 12:49
首先 你要筛选出那几个值的的坐标 在这些坐标上运用我上面给你的语句就可以啦

坐标?什么坐标啊?我的原始数据是x,y方向为701×701格点的雷达数据,画出来是以下图,我只想改变colorbar, 如图: leida.jpg
我想要这样的colorbar:
bar.jpg


密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-6-4 13:03:22 | 显示全部楼层
具体点就是 如果你想定义这个颜色:(0.753 , 0.000 , 0.000 )
如果Data(x,y)=10(dbz)
输出x y
color(x,y,1)=0.753
color(x,y,2)=0
color(x,y,3)=0
知识答题思路 仅供参考
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-6-4 13:06:18 | 显示全部楼层
你不是要根据回波值大小改颜色吗 所以当然要用到数据的坐标了 你肯定要读数据的啊
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-6-4 13:07:26 | 显示全部楼层
你这样的colorbar属于分区域赋颜色值
把数据在0-5的值赋成一种颜色
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2012-6-4 13:13:20 | 显示全部楼层
huang96169 发表于 2012-6-4 13:07
你这样的colorbar属于分区域赋颜色值
把数据在0-5的值赋成一种颜色

是的,分区域赋颜色值也需要坐标吗?那个怎么弄啊?因为我知道在grads里只需要确定颜色代码与物理量的值之间的关系就可以实现,比如:
'set clevs  10 12 14 16 18 20 22  '
'set ccols  0 10 7 12 8 2 6 9 '
在matlab里好像没这么方便,
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表