
PNG as figure background
95 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Andrew McCall
el 24 de Sept. de 2017
Editada: Kristina Collins
el 29 de Ag. de 2021
I am trying to generate a figure window with a saved PNG as the background. It will have a fluid simulation on top of it and all I want to do it have this saved PNG be the background. Similar to what set(gca,'Color', k) would do but instead of having the color I want to have it be a figure. Any thoughts?
0 comentarios
Respuesta aceptada
Chad Greene
el 24 de Sept. de 2017
Editada: Chad Greene
el 24 de Sept. de 2017
Try this. Start by plotting whatever data you have, then load the png image and plot it with image. Use the limits of the current axes (by xlim and ylim) as the x,y coordinates of the image edges. Some images might be flipped in the vertical direction, so you may have to use -ylim when you call imagesc. The uistack call just sends the image down to the bottom of the stack.
x = 1:500;
y = sind(x);
plot(x,y,'linewidth',3)
axis tight;
hold on
I = imread('peppers.png');
h = image(xlim,-ylim,I);
uistack(h,'bottom')

2 comentarios
Mahmud Khan
el 2 de Nov. de 2018
How would it work for a 3D figure though? What if I wanted to use similar images on all three planes (x-y, x-z & y-z)?
I've been trying but failing.
Kristina Collins
el 29 de Ag. de 2021
Editada: Kristina Collins
el 29 de Ag. de 2021
Ah, so close to what I need....
I'm trying to plot some shaded values as a backdrop on a datetime plot. Any tips on how to get this to play nicely with datetime axes?
(Edit: Never mind. Figured out an alternative solution for my particular problem (adding shading to the background to denote another quantity - in this case, eclipse obscuration - using "fill." Breadcrumb for anyone with a similar issue: https://www.mathworks.com/matlabcentral/answers/302892-use-fill-in-a-datetime-value-plot-to-color-the-background)
Más respuestas (2)
Marijn Dekker
el 10 de Dic. de 2019
@Chad Greene your answer works, however instead of using -ylim you would want to use flip(ylim) for a general case :)
0 comentarios
Image Analyst
el 24 de Sept. de 2017
See the Answer from MATLAB Support: https://www.mathworks.com/matlabcentral/answers/96023-how-do-i-add-a-background-image-to-my-gui-or-figure-window
0 comentarios
Ver también
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!