2017-09-15 67 views
0

我試圖用subplot繪製在MATLAB側3圖像側:彩條調整大小的次要情節

maxValue = 9; 
minValue = 5; 

figure(1) 
subplot(1,3,1); 
imshow(im1); 
axis equal; 

subplot(1,3,2); 
imagesc(im2);colorbar; 
caxis([minValue maxValue]) 
axis equal; 

subplot(1,3,3); 
imagesc(im3);colorbar; 
caxis([minValue maxValue]) 
axis equal; 

但結果是這樣的:

results

顯然,彩條是調整圖像大小。如何讓所有3張圖像的大小相同,並且色條適合圖像的大小?

回答

2

根據可用空間調整圖像大小以保持其寬高比。
使用axis normal;代替subplot(1,3,1)而不是axis equal
您可能還需要最大化數字窗口。


im1 = imread('peppers.png');,結果是:

output

0

這裏是我落得這樣做:

fig = figure(1); 
set(fig, 'Position', [52 529 1869 445]); % Resize the image 
subplot(1,3,1); % Add a subplot 
subaxis(1,3,1, 'Spacing', 0.03, 'Padding', 0, 'Margin', 0); % Remove whitespace from subplot 
imshow(im); 
axis equal; % Use undistorted images 


subplot(1,3,2); 
subaxis(1,3,2, 'Spacing', 0.03, 'Padding', 0, 'Margin', 0); 
imagesc(depth_gt);colorbar; 
caxis([minValue maxValue]) 
axis equal; 


subplot(1,3,3); 
subaxis(1,3,3, 'Spacing', 0.03, 'Padding', 0, 'Margin', 0); 
imagesc(depth_pred);colorbar; 
caxis([minValue maxValue]) 
axis equal; 

你可以得到這個 '位置' 我的手動調整的圖像,然後在Matlab命令終端打印輸出fig