How to Place an image over existing plots?

364 次查看(过去 30 天)
Hello, I have some graphs in Matlab over which I want to insert a small image. I do not want to cover the graphs completely, and want to know how to specify the exact position for overlaying this image onto the existing plots. I have used imread to read the file, but cannot seem to figure out imshow to display the image properly where I would like it to be.

采纳的回答

Chad Greene
Chad Greene 2014-12-18
Hi Ashley,
Run this:
figure
plot((1:10).^2)
axes('pos',[.1 .6 .5 .3])
imshow('coins.png')
The axes command sets up a new set of axes on top of the x^2 plot, with the position of those axes as follows:
[bottomleftcornerXposition bottomleftcornerYposition width height]
  4 个评论
JACQUES SPILLMANN
JACQUES SPILLMANN 2020-4-25
How would I go about rotating that picture on the plot, let's say, by 10 degrees clockwise?
Dardag
Dardag 2020-7-29
I am inserting a particular image in my figure but the resolution of the inserted image gets distorted if I create a smaller box for that, why would that be?
This is what I am using but I don't see any resolution options.
[img, map, alphachannel] = imread(fileName,'png');
image(img, 'AlphaData', alphachannel);

请先登录,再进行评论。

更多回答(1 个)

DGM
DGM 2023-3-22
This doesn't necessarily require creating another axes object. This can be done directly by setting xdata/ydata for image/imagesc/imshow.
See the example:

类别

Help CenterFile Exchange 中查找有关 Specifying Target for Graphics Output 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by