Matlab调整子图位置及大小(祛白边)+调整画布大小+添加总标题

子图显示问题:

不进行任何调整,默认画出的图为正方形,当需要画三个子图横排摆放时,效果如下:

load diagblock_noise.mat

subplot(1,3,1);
pcolor(X4);axis off;shading interp;colorbar;
title('原始样本');

subplot(1,3,2);
pcolor(B4);axis off;shading interp;colorbar;
title('相似度矩阵');

subplot(1,3,3);
B1=( abs(B4) + abs(B4') ) / 2;
map = tsne(B1,'Algorithm','exact','Distance','cosine');
gscatter(map(:,1), map(:,2),cls_label);
title('相似度矩阵的t-SNE分布图');

suptitle('噪声等级\beta=0.4') %总标题

在这里插入图片描述
很难受,怎么拉动图片大小位置总是不和谐。


图片调整:

Step 1:调整画布大小

set(gcf,'position',[250 300 600 200])的作用是调整整个画布大小。250,300这两个参数不影响画布大小,其作用是确定画出来的图在电脑屏幕上的显示位置,改为0,0则图显示在电脑左下角。600,200确定画布宽高,600为宽,高200,画出的图为600x200的长方形。

Step 2:调整子图位置大小

set(gca,'position', [0.05 0.15 0.3 0.58]);为每个子图设置位置及大小。也可以使用subplot(1,3,1,'position', [0.05 0.15 0.3 0.58]);效果一样。

前两个参数确定该子图起始位置,0.05,0.15表示该子图左下角坐标,调整这两个参数可以控制整张图下方与左侧方白边的大小。这里是让三个子图横排显示,所以三幅子图y轴坐标值一样。

后两个参数控制每幅子图宽高。宽度与高度的调整可以控制整张图右侧方及上方空白区域大小。这里设置子图高度相同为0.58,这里要根据整个画布进行调整,让0.58与600x200的画布高度贴合,尽量使之紧凑。太小就会上边或下边很大区域都是空白。宽度看图片显示效果来调整。比如,这里第一幅子图宽度为0.3,则下幅子图x轴起始位置就设成0.37,可以让两幅子图之间留一点点空隙,具体设置根据实际调整。

figure %生成图窗
set(gcf,'position',[250 300 600 200])

subplot(1,3,1);
set(gca,'position', [0.05 0.15 0.3 0.58]);
pcolor(X4);axis off;shading interp;colorbar;
title('原始样本');

subplot(1,3,2);
set(gca,'position', [0.37 0.15 0.3 0.58]);
pcolor(B4);axis off;shading interp;colorbar;
title('相似度矩阵');

subplot(1,3,3);
set(gca,'position',[0.7 0.15 0.25 0.58]);
B1=( abs(B4) + abs(B4') ) / 2;
map = tsne(B1,'Algorithm','exact','Distance','cosine');
gscatter(map(:,1), map(:,2),cls_label);
title('相似度矩阵的t-SNE分布图');

suptitle('噪声等级\beta=0.4') %总标题

效果图:
在这里插入图片描述


  • 40
    点赞
  • 164
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值