Effacer les filtres
Effacer les filtres

How do I add refreshable text label to my plot?

23 vues (au cours des 30 derniers jours)
Liad
Liad le 11 Mai 2011
Hello,
After searching the web and the Q/A in your site I have decided to beat the experts. I am creating bar figure and I would like to see the value on top of each bar. My problem is that my figure refreshes every 2 seconds via timer (which is good), but the text on the bars is accumulating. I tried all values of 'erasemode' but it didn't help. I also tried to do h = text(...) and then delete h, but it didn't solve anything. Sorry to disturb if there is a similar question and solution.
Thanks in advance, Liad.

Réponse acceptée

Laura Proctor
Laura Proctor le 11 Mai 2011
I tried the following and it worked:
h = text(1,1,'hi there')
delete(h)
So I'm wondering if you would be able to show a simple example to help explain the issue.

Plus de réponses (2)

Fangjun Jiang
Fangjun Jiang le 11 Mai 2011
set(h,'String','this is new text')

sco1
sco1 le 11 Mai 2011
The way your question reads, I'm assuming you are annotating the plot itself using the text() function?
Are you using hold?
  5 commentaires
Liad
Liad le 12 Mai 2011
Hi,
I tried to move the next line to my initialize section, and do the 'set' in the 'for' loop:
ht(patIx) = text(lineNum, data(:,patIx),num2str(data(:,patIx)), 'Parent', hbar(patIx),'EraseMode','background');
But it keeps crashing even in the initialize part.
Does the 'set' allow to change the position of the text? Because I would like it in the height of my bar each time the plot gets refreshed.
Thank you,
Liad.
Fangjun Jiang
Fangjun Jiang le 13 Mai 2011
Once you created the text() element and get its handle ht(patlx), you can type get(ht(patlx)) in the Matlab command window to see all its properties. Then you can use set() to change most of the properties.
Start with the simplest option to create the text() element, step through to understand how it works and gradually add more options.
What do you mean "crashing"? Does it cause errors? or the figure does not show correctly? use the command drawnow() may help refreshing the figure.

Connectez-vous pour commenter.

Community Treasure Hunt

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

Start Hunting!

Translated by