爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
楼主: huihuang

[程序设计] MATLAB-实现两端尖头的colorbar

  [复制链接]
发表于 2023-2-15 09:38:12 | 显示全部楼层
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

发表于 2023-3-26 20:43:36 | 显示全部楼层
新的colorbarn文件要怎么使用?只能画出colorbar,不能和contourf()绘图结合
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-4-11 09:36:32 | 显示全部楼层
曦月 发表于 2023-3-26 20:43
新的colorbarn文件要怎么使用?只能画出colorbar,不能和contourf()绘图结合

你好,能更具体地描述一下问题么
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

发表于 2023-4-11 09:41:31 | 显示全部楼层
下来看看,如何用的
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

发表于 2023-4-17 19:27:59 | 显示全部楼层
本帖最后由 叶舟 于 2023-4-18 10:14 编辑

报错:
错误使用 colorbarn
输出参数太多。

出错 contf_line (第 24 行)
[ax1,c]=colorbarn(tick,color,mode);

打开colorbarn.m
把所有的Color改写成color

第一行改写成:
[ax1,c]=colorbarn(tick,color,mode);

108行和133行分别加入:
    ax1=axes('position',[0.10.2 0.75 0.7]);

一个例子
lon=1:10;
lat=1:10;
color=[0.0274509803921569,0.117647058823529,0.274509803921569;0.101400560224090,0.408403361344538,0.681792717086835;0.403361344537815,0.679551820728291,0.819047619047619;0.870588235294118,0.964705882352941,1;1,0.887394957983193,0.890196078431373;0.985994397759104,0.482913165266107,0.357422969187675;0.757422969187675,0.0840336134453782,0.106442577030812;0.372549019607843,0,0];

tick=[0:0.1:0.6,0.8,0.9];
mode='v';
data_9=rand(10,10);
[ax1,c,h]=contf_line(lon,lat,data_9,tick,color,mode);
set(gca,'fontname','TimesNew  Roman','fontsize',16,'fontangle','italic');
set(c,'fontname','TimesNew Roman','fontsize',14);
以上错误,什么都不用改!
我理解错题主意思了,我们可以直接使用matlab自带的m_contourf和[size=13.3333px]contourf绘图,
[size=13.3333px]然后使用[size=13.3333px]c1=colorbarn(xtick,color,'mode','v');可以为他增加一个带箭头的标签。[size=13.3333px]附件里的contf_line文件不用管他![size=13.3333px]
一个例子:
m_proj('Equidistant cylindrical','lon',[105 125],'lat',[0 25]);

[CS,CH]=m_etopo2('contourf',[-5000:500:0],'edgecolor','none');
m_grid('xtick',105:5:125,'ytick',0:5:25,'fontname', ...
    'Times New Roman','fontsize',16);
color=[0.0156862745098039,0.0235294117647059,0.0745098039215686;0.118954248366013,0.115032679738562,0.233986928104575;0.202614379084967,0.198692810457516,0.409150326797386;0.247058823529412,0.294117647058824,0.588235294117647;0.244444444444444,0.416993464052288,0.691503267973856;0.288888888888889,0.539869281045752,0.739869281045752;0.380392156862745,0.658823529411765,0.780392156862745;0.516339869281046,0.773856209150327,0.827450980392157;0.715032679738562,0.881045751633987,0.892810457516340;0.917647058823529,0.992156862745098,0.992156862745098];
colormap(color);
brighten(.5);
m_usercoast('sea_line_5','color','k','linewidth',1)%设置海岸线
tick=[-5000:500:0];
c1=colorbarn(tick,color,'mode','v');







带尖角的不等间距colorbar.png
33.jpg
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

发表于 2023-4-17 21:15:37 | 显示全部楼层
叶舟 发表于 2023-4-17 19:27
报错:错误使用 colorbarn输出参数太多。
出错 contf_line (第 24 行)[ax1,c]=colorbarn(tick,color,mode) ...

如果提示:Output argument "ax1" (and possibly others) not assigned a value in the execution with "contf_line"
function.请检查tick是不是比color大1.
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

发表于 2023-5-3 13:59:06 | 显示全部楼层
感谢楼主的分享,刚好可以用上
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

发表于 2023-11-1 14:55:51 | 显示全部楼层
请问能上传contourf_example.png的全部代码么?     
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

发表于 2023-11-1 14:58:44 | 显示全部楼层
请问这个colorbarn是不能作用于mmap包么? 我用m_proj和m_contourf绘图后,colorbar改了,但是图里的颜色没有对变化。   方便上传contourf_example.png的全部代码么?  
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

发表于 2023-11-1 15:02:51 | 显示全部楼层
本帖最后由 夜未央 于 2023-11-1 15:26 编辑
夜未央 发表于 2023-11-1 14:58
请问这个colorbarn是不能作用于mmap包么? 我用m_proj和m_contourf绘图后,colorbar改了,但是图里的颜色没 ...

捕获.JPG

密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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