how to define an axis in other figure to plot in it

4 vues (au cours des 30 derniers jours)
ali hadjer
ali hadjer le 3 Nov 2015
how to define an axes in other figure to plot in it WITH A CALLBACK OF PUSHBOUTON IN THE OTHER FIGURE NB:AXES2 IN FIGURE2 PUSH BUTON IN FIGURE ON

Réponse acceptée

Adam
Adam le 3 Nov 2015
figure; hAxes = gca;
plot( hAxes,... )
allows you to plot on a different axes and is recommended anyway (giving an explicit axes handle) rather than relying on whatever the current axes happens to be.

Plus de réponses (1)

Jan
Jan le 3 Nov 2015
You have to obtain the handle of the axes you want to draw in. You can get it either by e.g. findobj, when you define a unique Tag property for the concerned axes.
figure;
axes('Tag', 'IWantToDrawHere');
Code of the other GUI:
figure;
uicontrol('Style', 'PushButton', 'Callback', @buttonCallback);
function buttonCallback(ButtonH, EventData)
AxesH = findobj('Tag', 'IWantToDrawHere');
if length(AxesH) ~= 1
warning('Cannot find my axes?!');
return;
end
plot(1:10, rand(1, 10), 'Parent', AxesH);
A drawback of this method is the run-time: If you have many open figures with a lot of objects, searching all of them to find the tag is not fast. So it would be better to store the axes handle in the UserData or ApplicationData of the figure and search it there.
  2 commentaires
ali hadjer
ali hadjer le 3 Nov 2015
ITS NOT WORKER????? :( HOW I DO
Walter Roberson
Walter Roberson le 3 Nov 2015
What error message do you get?

Connectez-vous pour commenter.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by