Clear Filters
Clear Filters

I'm trying to plot inside a while loop.

26 views (last 30 days)
Evan
Evan on 11 Dec 2022
Answered: Rohit on 19 Dec 2022
Hello, I'm working on a project, and I'm trying to plot two arrays on one graph inside a while loop. The reason I'm plotting inside the while loop is because I have to make sure my code can run again if the user would like to run it again. I want the plot to be pop up and then the code asks for the user's input. What's been happening is the code skips over the plot and asks for the users input. The code only plots when the user ends says no to running it again and then it plots. If this is impossible plese let me know.
  2 Comments
Walter Roberson
Walter Roberson on 12 Dec 2022
Please post the relevant section of code.
Evan
Evan on 12 Dec 2022
Nevermind, I was allowed to change the parameters. I also learned about the drawnow function.

Sign in to comment.

Answers (1)

Rohit
Rohit on 19 Dec 2022
Hello,
I am adding a sample example below which plots 2 arrays ‘a’,’b’ (wrt ‘t’) inside a while loop based on user’s input ‘x’. You can take it as a reference and based on your use case modify the below code.
x=1;
t=[1,2,3];
a=[2 1 1];% First array
b=[4,5,3];% Secind array
cnt=1;% Plot count
while(x==1)
fig=figure(1);
plot(t,b);
hold on;
plot(t,a);
hold off;
fig.Name=['Plot ' num2str(cnt)];
drawnow
x=input('Press 1 if you want to plot again\n');
b=b+1;
cnt=cnt+1;
end
You can refer to the following documentation link for drawnow function along with a related MATLAB Answers link:

Categories

Find more on Graphics Performance in Help Center and File Exchange

Products


Release

R2022a

Community Treasure Hunt

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

Start Hunting!