plot subplots on one background image

1 view (last 30 days)
Hello,
I am wondering how I can have a picture (.jpg) as the background of a figure and then plot several subplots on top of this picture (I would set postitio and axis off to see both the plots and the background).
The problem is, it is easy to have several pictures drawn, for each subplot, but that is not what I need --- it must be several subplots on well defined positions of one background picture.
Thanks for any suggestions!
Istvan

Accepted Answer

Image Analyst
Image Analyst on 16 Oct 2011
  2 Comments
Istvan
Istvan on 17 Oct 2011
yes, this solves all problems. One can use subplot() in combination with this and the axis below is protected. Thanks a lot!
Walter Roberson
Walter Roberson on 17 Oct 2011
No, the axis below is not protected using the code in that solution. If you read that solution carefully, it says to draw the subplots first and then to put in the background. It doesn't explain why.
If you subplot() a new plot in to place after drawing the background image using the solution, your background image will be deleted.
The solution is the same as what I described except that I spent more time on describing the reasons and less time on describing step-by-step.

Sign in to comment.

More Answers (1)

Walter Roberson
Walter Roberson on 16 Oct 2011
You cannot do this using subplot(). subplot() always removes any axes that is underneath the portion of the figure that is to be imaged in to.
If you were to create the subplots first and then to draw the image, and push the image "below" the subplots, then you would not run in to the above subplot behavior.
Be sure to set the 'color' property of each subplot axis to 'none'.

Community Treasure Hunt

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

Start Hunting!