| 
 
	积分22790贡献 精华在线时间 小时注册时间2015-12-7最后登录1970-1-1 
 | 
 
| 
本帖最后由 葫芦爷儿 于 2019-12-24 16:36 编辑
x
登录后查看更多精彩内容~您需要 登录 才可以下载或查看,没有帐号?立即注册 
  
 在群里看到有人问过matlab中colorbar能否画成三角的形式。
 之前只知道python和ncl可以画,今天查到了两个工具包cbarrow和cbarf,
 
 
 家园中也有人提供了该方案: http://bbs.06climate.com/forum.php?mod=viewthread&tid=92167&highlight=colorbar
 cbarrow是在colobar上画三角
 cbarf 是利用axis重绘制了一个colorbar
 如果调整cbarf的字体大小等,需要找到对应代码进行修改,如字体大小
 
 调用时,需要注意先确定colormap的颜色和范围,因为cbarf 是取得当前的colomap进行绘制。如复制代码%   set(ax,'xtick',[],'yaxislocation','right','ytick',yt,'yticklabel',ytl);
  set(ax,'xtick',[],'yaxislocation','right','ytick',yt,'yticklabel',ytl, 'fontsize', 15);
可以用h1.Position调整colobar的位置。
 
 复制代码% colorbar设置
caxis([0,depth_max])
colormap(othercolor(colormap_name))
h1 = cbarf(dep, level_colorbar);
% 调整colorbar位置
h1.Position=[0.89, 0.15, 0.05, 0.7];
 
 参考网址:
 cbarrow  https://ww2.mathworks.cn/matlabc ... -colorbars?s_tid=sr
 cbarf  https://ww2.mathworks.cn/matlabcentral/fileexchange/14290-cbarf?s_tid=srchtitle
 如果没有Matlab账号,申请一个。
 !可以直接从链接网站的function下把对应函数下载下来。
 
 
 以下是该函数的测试…
 
   
 | 
 |