2017-09-15 9 views
0

Ich versuche Seite plotten 3 Bilder von Seite in MATLAB subplot mit:Colorbar ändert die Größe der Nebenhandlungen

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; 

aber das Ergebnis sieht wie folgt aus:

results

Anscheinend ist der colorbar ist Größe des Bildes ändern. Wie kann ich alle 3 Bilder die gleiche Größe und die Farbleiste der Größe des Bildes anpassen?

Antwort

2

Ihr Bild wird so skaliert, dass das Seitenverhältnis entsprechend dem verfügbaren Platz beibehalten wird.
Verwenden Sie axis normal; für subplot(1,3,1) anstelle von axis equal.
Möglicherweise müssen Sie auch das Zahlenfenster maximieren.


Für im1 = imread('peppers.png');, das Ergebnis ist:

output

0

Hier ist, was ich tun endete:

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; 

Sie können diese 'Position' erhalten meine manuell die Größe neu bestimmen Bild und dann Drucken der Ausgabe von fig in der Matlab Befehlsterminal

Verwandte Themen