plotting with changing variable values with switch case command

13 vues (au cours des 30 derniers jours)
Meva
Meva le 3 Mar 2015
My whole program run with a loop . It is not showing the plot when I try below:
for nt =1:30001
...
switch nt
case 0
h1=plot(x,y,x,z,'-.xr');
case 10001
h2=plot(x,y,x,z,'-.xg');
case 20001
h3=plot(x,y,x,z,'-.xk');
case 22556
h4=plot(x,y,x,z,'-.xb');
end
hold on;
legend('1','2','3','4')
How can I plot all cases?

Réponses (1)

Robert Cumming
Robert Cumming le 3 Mar 2015
you need to specify the hold command before you start creating the plots.
  2 commentaires
Meva
Meva le 3 Mar 2015
Modifié(e) : Meva le 3 Mar 2015
I have added
plot(h1,h2,h3,h4)
I used :
switch nt
case 0
h1=plot(x,y,x,z,'-.xr');
case 10001
h2=plot(x,y,x,z,'-.xg');
case 20001
h3=plot(x,y,x,z,'-.xk');
case 22556
h4=plot(x,y,x,z,'-.xb');
end
hold on;
plot(h1,h2,h3,h4)
legend('1','2','3','4')
but it does not recognise h1
Robert Cumming
Robert Cumming le 3 Mar 2015
your loop starts at 1 - h1 is only activated when your loop index is 0 (doesn't look like that happens in your example)

Connectez-vous pour commenter.

Community Treasure Hunt

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

Start Hunting!

Translated by