Using text function in a for loop
30 views (last 30 days)
Show older comments
Hi, what i want to ask is how can i use the text function inside a loop and make it print the number of iterations? like this
for i = 1:4
----some code----
text(pos1,pos2,i)
end
1 Comment
Oleg Komarov
on 12 May 2012
Where do you want it printed? If on a graph, then you're on the right track. Do you want to keep the iteration already printed or you want to update it?
If you want to print it in the command window use disp or sprintf.
Accepted Answer
Image Analyst
on 12 May 2012
Don't use i (the imaginary variable) for your loop index.
I handle a number of situations below.
for k = 1:1000
caption = sprintf('The value of k is %d', k);
% Print to command window.
fprintf('%s\n', caption);
% Print to static text control on a GUI.
set(handleToText, 'String', caption);
% Print to the overlay of an image or plot.
text(5, 10, caption);
% Force it to repaint the screen immediately.
drawnow;
end
Note the use of drawnow. If you're in an intensive loop, it often won't take time out to repaint your GUI until it's done with the loop. Thus you won't see any update on your screen. To get around this, use the drawnow command to force it to update/refresh/repaint the screen each time it's called.
0 Comments
More Answers (0)
See Also
Categories
Find more on Loops and Conditional Statements in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!