Progress Bar and for loop

507 visualizaciones (últimos 30 días)
Noah Kilps
Noah Kilps el 24 de Sept. de 2020
Comentada: Mitsu el 21 de Sept. de 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

Respuesta aceptada

Ameer Hamza
Ameer Hamza el 24 de Sept. de 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 comentarios
Noah Kilps
Noah Kilps el 24 de Sept. de 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 el 21 de Sept. de 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.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Dialog Boxes en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by