Effacer les filtres
Effacer les filtres

Using a single figure frame for chasePlot used inside a loop

1 vue (au cours des 30 derniers jours)
Haroon
Haroon le 13 Nov 2017
Commenté : Haroon le 16 Nov 2017
I have a while loop inside of which I have to use a plot and a chasePlot function.
The problem is, it comes up with a new window figure each time the loop runs. I somehow want a single frame which can be updated rather than each time making a new window and figure for it.
Anybody knows how to prevent a new figure in each loop so that one figure is there and that keeps on updating.

Réponse acceptée

Greg Dionne
Greg Dionne le 14 Nov 2017
If you have a handle to the axes you are using you can pass it to the 'Parent' property of the chasePlot when you construct it.
Something like:
hAxes = axes
chasePlot(scenario, 'Parent', hAxes)
  3 commentaires
Greg Dionne
Greg Dionne le 15 Nov 2017
You'll probably want to do something like this (ultimately)
% set working figure to figure 1 (creating if it doesn't exist)
figure(1);
% get current axes (creating if it doesn't exist)
hAxes = gca;
% pass it to the chase plot.
chasePlot(passingCar,'Parent',hAxes)
If you call axes() you may end up creating a new one each time and just rendering it over the previous axes.
Haroon
Haroon le 16 Nov 2017
Thank you. This works as well but I am using axes only because it gives me a good view of plot in plot. Though I don't know exactly how the output differs if I use
hAxes = gca;
or
hAxes = axes;
nor I know which one is better in my case.

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by