How to refresh annotation after each frame?

10 vues (au cours des 30 derniers jours)
Phillip Foy
Phillip Foy le 11 Oct 2018
Modifié(e) : Adam Danz le 13 Août 2019
I am trying to insert an output in an annotation outside of my plot. The value just keeps stacking on top of each other until it is unreadable. When I use the delete(findall(gcf,'Tag','stream') function it will delete the annotation and not refresh it like I am trying to do. Any suggestions?
annotation('textbox', [0 .6 .1 .2],'String','500 MHz Max Gain Slope (dB):','EdgeColor','none');
annotation('textbox', [0 .55 .1 .2],'String',Delta_band,'EdgeColor','none','Tag','stream')
delete(findall(gcf,'Tag','stream'));

Réponse acceptée

Image Analyst
Image Analyst le 11 Oct 2018
After you're done with each frame, call
drawnow;
to force immediate refresh/repainting of the screen.
  2 commentaires
Phillip Foy
Phillip Foy le 11 Oct 2018
Thank you for a quick response! So do I even use the delete function with this? When I put drawnow; under my annotations I still end up with a movie that has the data stacked on top of each other.
Phillip Foy
Phillip Foy le 11 Oct 2018
Modifié(e) : Phillip Foy le 11 Oct 2018
I was able to put the delete function before the annotations and then use the drawnow; function after the annotations and it worked perfectly! Thank you again for the help!!!
for ind = 1:a
delete(findall(gcf,'Tag','stream'));
annotation('textbox', [0 .6 .1 .2],'String','500 MHz Max Gain Slope (dB):','EdgeColor','none');
annotation('textbox', [0 .55 .1 .2],'String',Delta_band,'EdgeColor','none','Tag','stream')
drawnow;
end

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Entering Commands dans Help Center et File Exchange

Tags

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by