Matlab用figure;subplot后合并子图

MATLAB作图时,如果带有子图,可用subplot作图。如果需要一个规则的网格,直接制定subplot(m,n,p),即可画出m×n的子图排列中的第p个。但是如果需要不规则的,如2×2的格子中,两个小图分别占上面的两个subplot,一个长图要占据下面两个格子,此时要用subplot(2,2,[3,4])来实现。
如果选定的 [ ] 内的两个数不在同一个行列,那么就表示以小数作为左上角,大数作为右下角的矩形框围成的区域。

% 一个栗子
figure;
subplot(2,2,1)
imagesc(synring(t0:t1,x0:x1))
set(gca,'xtick',[1,50:50:200])
set(gca,'xticklabel',[301,350:50:500])
set(gca,'ytick',[1,50:50:200])
set(gca,'yticklabel',[201,250:50:400] .* dt)
xlabel({'Trace Number';'(a)'})
ylabel('Time (ms)')
colormap(gray)
subplot(2,2,2)
imagesc(synsection(t0:t1,x0:x1))
set(gca,'xtick',[1,50:50:200])
set(gca,'xticklabel',[301,350:50:500])
set(gca,'ytick',[1,50:50:200])
set(gca,'yticklabel',[201,250:50:400] .* dt)
xlabel({'Trace Number';'(b)'})
ylabel('Time (ms)')
colormap(gray)
subplot(2,2,[3,4])
h1 = plot(t0:t1,synsection(t0:t1,selected_trace));
hold on
h2 = plot(t0:t1,synring(t0:t1,selected_trace));
set(h1,'LineWidth',1.5)
set(h2,'LineWidth',1.5)
set(gca,'xtick',[201,250:50:400])
set(gca,'xticklabel',[201,250:50:400] .* dt)
xlabel({'Time (ms)';'(c)'})
ylabel('Amplitude (normalized)')
h = legend('synthetic data without ringing', 'bandpass filtereddata with ringing');
set(h,'Box','off')
set(h, 'Fontsize',9)
colormap(gray)

这里写图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值