Set image aspect ratio using imshow

25 vues (au cours des 30 derniers jours)
Gerard Capes
Gerard Capes le 18 Août 2017
Commenté : Adam le 18 Août 2017
I am trying to load an image (screenshot of a graph), and plot my data on top. I have achieved this, but the aspect ratio of the displayed image/graph doesn't look to be adjustable. Can it be done?
% Load cleaned up screen shot.
load image.mat
% Observe aspect ratio.
imshow(I)
% Flip matrix so that y axis origin is at the bottom instead of the top.
I = flipud(I);
% Scale image to allow plotting on top - this works, but changes the aspect ratio.
RI = imref2d(size(I));
RI.XWorldLimits = [1970 2020];
RI.YWorldLimits = [320 410];
figure;
imshow(I,RI);
set(gca,'YDir','normal');

Réponse acceptée

Adam
Adam le 18 Août 2017
  2 commentaires
Gerard Capes
Gerard Capes le 18 Août 2017
Great, thanks! Easy when you know where to look! I do wonder why it changed the aspect ratio in the first place?
Adam
Adam le 18 Août 2017
I'm not aware of any overload of imshow that takes an imref2d as 2nd argument. Is this an overload from a toolbox?

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Images dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by