How Assign a Plot to a Specific Axes?

141 views (last 30 days)
Rightia Rollmann
Rightia Rollmann on 21 Feb 2017
Edited: Jan on 21 Feb 2017
I have drawn two Axes in GUIDE.
How can I assign each of my plots to one of them?
when I now run it, MATLAB just put both plots on one another.

Accepted Answer

Jan
Jan on 21 Feb 2017
Use the handles of the axes objects:
plot(1:10, rand(1, 10), 'Parent', handles.axes1)
plot(1:10, -rand(1, 10), 'Parent', handles.axes2)
This assumes, that your axes have the names "axes1" and "axes2" (I don't know if this is the standard in GUIDE) and that they are stored in the handles struct, which should be available in your callback.
  2 Comments
Rightia Rollmann
Rightia Rollmann on 21 Feb 2017
Edited: Rightia Rollmann on 21 Feb 2017
Thank you! But still one problem:
Imagine what is to be shown is stored in a struct. How can I tell MATLAB that show plot this struct in a certain Axes? Detailed Explanation here.
Jan
Jan on 21 Feb 2017
Edited: Jan on 21 Feb 2017
You can assign the Parent property also using the dot notation:
R = rectangle;
R.Position = [X Y W H];
R.Parent = handles.axes2;
This is equivalent to:
R = rectangle('Position', [X Y W H], 'Parent', handles.axes2);

Sign in to comment.

More Answers (0)

Categories

Find more on Specifying Target for Graphics Output in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!