matlab 云图colorbar如何使用logscale对数尺度

https://zhidao.baidu.com/question/1446748356021954700.html

将数据处理,log10,然后使用

colorbar('YTick',[-6,-5,-4,-3,-2,-1,-0],...
'YTickLabel',{'1E-6','1E-5','1E-4','1E-3',...
'1E-2','1E-1','1E0'});

就是使用logscle的数据,然后改变colorbar的标注,这是我找了好多回答唯一有用的,差点因此放弃matlab去使用python,

 

https://www.codenong.com/18191867/

这个是python的,但是照猫画虎,python画图还是不太会,回头一搜索,立马就找到了上面的答案

真是

山重水复疑无路,柳暗花明又一村

 

示例:

 %sigma  epsilon
clear,clc
e=linspace(-2,2,5);
s=linspace(-2,2,5);
s = 10.^s;
e = 10.^e;
[X,Y]=meshgrid(e,s);
Z =X+Y;
figure
%x,y正常绘制,使用set(gca,'XScale','log')对x,y轴取使用logsale
%z取对数log10(Z),绘制,使用colorbar(YTickLabel)修改
%[-3,-2,-1,0,1,2,3]为
% {'1E-3','1E-2','1E-1','1E0','1E1','1E2','1E3'}); 
contourf(X,Y,log10(Z),10)
set(gca,'FontName','Times New Roman','FontSize',12)
set(gca,'XScale','log')
set(gca,'YScale','log')
colorbar('YLim',[-3 3],...
    'YTick',[-3,-2,-1,0,1,2,3],...
'YTickLabel',{'1E-3','1E-2','1E-1','1E0','1E1','1E2','1E3'}); 

 

 

======================================================================================

还有一种方法是将数据转换为log尺度,直接绘制,坐标轴换为log(x)

 

 

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值