Set image aspect ratio using imshow

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');

 採用された回答

Adam
Adam 2017 年 8 月 18 日

0 投票

doc daspect

2 件のコメント

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

サインインしてコメントする。

その他の回答 (0 件)

質問済み:

2017 年 8 月 18 日

コメント済み:

2017 年 8 月 18 日

Community Treasure Hunt

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

Start Hunting!

Translated by