分享

MATLAB子图的控制

 超弦 2017-03-07

这篇文章主要讲讲在matlab中如何控制子图的大小、位置及如何控制各个子图所对应的colorbar。

1.caxis([cmin cmax])

用来控制colorbar的上下边界,通过控制边界可以使各个子图使用同样范围的colorbar。

clear all
clc
subplot(2,1,1)
[x y]=meshgrid(-1:0.01:1);
f=x.^2+y.^2;
mesh(x,y,f)
colorbar
caxis([0 4])
subplot(2,1,2)
[x y]=meshgrid(-1:0.01:1);
f=x.^2+y.^2+2;
mesh(x,y,f)
colorbar
caxis([0 4])

MATLAB子图的控制 - tangxiao - tangxiao的博客

2.在上面的例子中我们使两个子图的colorbar保持一致,这时候就出现了另外一个问题,

既然两个图的colorbar一样,那我们为什么不合二为一呢?我们将colorbar统一放到两个

图形的右边,这时候就需要对子图的大小、位置进行控制。

clear all
clc
h1=subplot(2,1,1);
% get(h1,'Position')
set(h1,'Position',[0.2    0.6    0.5    0.35])
[x y]=meshgrid(-1:0.01:1);
f=x.^2+y.^2;
mesh(x,y,f)
h=colorbar;
% get(h, 'Position')
set(h,'Position',[0.8    0.1    0.05    0.8])
caxis([0 4])
h2=subplot(2,1,2);
% get(h2,'Position')
set(h2,'Position',[0.2    0.1    0.5    0.35])
[x y]=meshgrid(-1:0.01:1);
f=x.^2+y.^2+2;
mesh(x,y,f)
% colorbar
% caxis([0 4])

MATLAB子图的控制 - tangxiao - tangxiao的博客

get可以得到相应图形句柄的Position值,然后再通过set进行具体设定即可。

 

 

 转载自:http://blog.sciencenet.cn/home.php?mod=space&uid=412191&do=blog&id=625804

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多