Progress Bar and for loop

조회 수: 520 (최근 30일)
Noah Kilps
Noah Kilps 2020년 9월 24일
댓글: Mitsu 2021년 9월 21일
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

채택된 답변

Ameer Hamza
Ameer Hamza 2020년 9월 24일
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
Noah Kilps
Noah Kilps 2020년 9월 24일
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 2021년 9월 21일
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.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Dialog Boxes에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by