I'm trying to plot inside a while loop.

24 次查看(过去 30 天)
Evan
Evan 2022-12-11
回答: Rohit 2022-12-19
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 个评论
Evan
Evan 2022-12-12
Nevermind, I was allowed to change the parameters. I also learned about the drawnow function.

请先登录,再进行评论。

回答(1 个)

Rohit
Rohit 2022-12-19
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:

类别

Help CenterFile Exchange 中查找有关 Graphics Performance 的更多信息

产品


版本

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by