Subplot without stretching images?

24 vues (au cours des 30 derniers jours)
Isktaine
Isktaine le 19 Sep 2012
Hi,
I have three figures and want to combine them in a long rectangular image so they can be viewed side by side. I've used subplot but this 'squashes' the figures so they are not very readable. Is there a function that allows three figures to effectively be concatenated into one larger image?
Thanks,
isktaine

Réponses (1)

José-Luis
José-Luis le 19 Sep 2012
Modifié(e) : José-Luis le 19 Sep 2012
You can create custom axes, e.g.:
ax(1) = axes('Position',[0.05 0.1 0.3 0.8]);
ax(2) = axes('Position',[0.35 0.1 0.3 0.8]);
ax(3) = axes('Position',[0.65 0.1 0.3 0.8]);
And manipulate their properties so they look how you want
Or for an arbitrary number of axes:
n = 4; % How many you need?
ax = ones(1,n); %Handle so you can plot afterward
width = 0.9 / n;
for ii = 0:n-1
ax(ii+1) = axes('Position',[(0.05+(width*ii)) 0.1 width 0.8]);
end
  4 commentaires
Isktaine
Isktaine le 19 Sep 2012
Sorry but if I use this I still get it plotting in a square figure, so it doesn't really fix my problem.
José-Luis
José-Luis le 19 Sep 2012
Modifié(e) : José-Luis le 19 Sep 2012
I don't understand what you mean. If your image is distorted, maybe:
axis equal
would work.

Connectez-vous pour commenter.

Tags

Produits

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by