如果要使两幅图无缝并排放显示,可以使用imshowpair函数中的蒙太奇形式,简单易用。
例如将A图与C图并排放置显示:
imshowpair(A,C,'montage');
要使三幅图无缝并排放,subplot函数的效果总是有很大空隙,需要设置该函数的‘Position’参数来自定义位置。自定义位置指定为 [left bottom width height] 形式的四元素向量。
left 和 bottom 元素指定子图的左下角相对于图窗的左下角的位置。
width 和 height 元素指定子图维度。
指定介于 0 和 1 之间的归一化值(基于图窗内界)。
例如三图并列放可以这么写
subplot(1,3,1,'Position',[0 0 .3 1]);
imshow(A)
subplot(1,3,2,'Position',[.3 0 .3 1]);
imshow(C)
subplot(1,3,3,'Position',[.6 0 .3 1]);
imshow(D)
显然横坐标使用了0到0.9的位置,子图间已经没有了空白,但最右侧有空白,可以改成每个图占0.33的位置。
更多关于子图位置调整,去空白的帖子请看:
Matlab子图间距和边缘距离调整
MATLAB-subplot使用‘position’子图丢失问题,解决方法