Effacer les filtres
Effacer les filtres

Progress Bar and for loop

421 vues (au cours des 30 derniers jours)
Noah Kilps
Noah Kilps le 24 Sep 2020
Commenté : Mitsu le 21 Sep 2021
Hello,
I am needing to add a progress bar to my code that is basically one 800 line for loop. I keep looking up and trying the basic codes for progress bar already listed on mathworks but I can't seem to figure it out. Can anyone help me figure this out?
Here is the simple one I tried but it doesn't work for me by itself, and I dont know how I would implement it into the for loop either.
function basicwaitbar
f = waitbar(0,'Please wait...');
pause(.5)
waitbar(.33,f,'Loading your data');
pause(1)
waitbar(.67,f,'Processing your data');
pause(1)
waitbar(1,f,'Finishing');
pause(1)
close(f)
end

Réponse acceptée

Ameer Hamza
Ameer Hamza le 24 Sep 2020
See this example
f = waitbar(0, 'Starting');
n = 100;
for i= 1:n
% write your code here
waitbar(i/n, f, sprintf('Progress: %d %%', floor(i/n*100)));
pause(0.1);
end
close(f)
  5 commentaires
Noah Kilps
Noah Kilps le 24 Sep 2020
I found this code. Using progress bar over waitbar worked better for some reason. See below:
Demos:
% Single bar
m = 500;
progressbar % Init single bar
for i = 1:m
pause(0.01) % Do something important
progressbar(i/m) % Update progress bar
end
Mitsu
Mitsu le 21 Sep 2021
I am using MATLAB 2018b. Ameer's code works as expected.
I suspect Noah's code includes something else that interferred with this minimum working example.
progressbar seems to be a function from MATLAB File Exchange, while waitbar is built in MATLAB.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Dialog Boxes dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by