I'm trying to plot inside a while loop.

20 Ansichten (letzte 30 Tage)
Evan
Evan am 11 Dez. 2022
Beantwortet: Rohit am 19 Dez. 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 Kommentare
Walter Roberson
Walter Roberson am 12 Dez. 2022
Please post the relevant section of code.
Evan
Evan am 12 Dez. 2022
Nevermind, I was allowed to change the parameters. I also learned about the drawnow function.

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Rohit
Rohit am 19 Dez. 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:

Kategorien

Mehr zu Graphics Performance finden Sie in Help Center und File Exchange

Produkte


Version

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by