I'm trying to plot inside a while loop.

45 visualizzazioni (ultimi 30 giorni)
Evan
Evan il 11 Dic 2022
Risposto: Rohit il 19 Dic 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 Commenti
Walter Roberson
Walter Roberson il 12 Dic 2022
Please post the relevant section of code.
Evan
Evan il 12 Dic 2022
Nevermind, I was allowed to change the parameters. I also learned about the drawnow function.

Accedi per commentare.

Risposte (1)

Rohit
Rohit il 19 Dic 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:

Categorie

Scopri di più su Graphics Performance in Help Center e File Exchange

Prodotti


Release

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by