Hi,
I have
t=0:0.01:10
x=a*t
y=sin(x)
and a has two values a=2, a=3
I want to plot (x, y) with two values of a in the same loop. Thanks in advance

 Risposta accettata

Sean de Wolski
Sean de Wolski il 3 Feb 2012

0 voti

t=0:0.01:10;
a = [2 3];
x=a'*t;
y=sin(x);
plot(x',y')

5 Commenti

zina ben
zina ben il 3 Feb 2012
thinks,
but if a is un input and it can take any value what can i do
Sean de Wolski
Sean de Wolski il 3 Feb 2012
rewrite it as a function that takes a row vector a...
or if it takes a column vector a, you can skip the transpose in the calculation of x.
zina ben
zina ben il 3 Feb 2012
but i need the graphe for each one value of a in the same figure
Sean de Wolski
Sean de Wolski il 3 Feb 2012
This answer had that...
Walter Roberson
Walter Roberson il 3 Feb 2012
Yes, Sean's solution should work just fine, and it is worth eventually studying how it works. It is a more advanced and less technique. But first you should study "hold on" as you will use that more in practice.

Accedi per commentare.

Più risposte (1)

Walter Roberson
Walter Roberson il 3 Feb 2012

0 voti

t = 0 : 0.01 : 10
for a = 2 : 3
x = a .* t;
y = sin(x);
plot(x, y);
hold on % <---- THIS
end
Which is the same solution you were told in your two previous questions on the same topic.

3 Commenti

zina ben
zina ben il 3 Feb 2012
thinks,
It is a simple idea
Walter Roberson
Walter Roberson il 3 Feb 2012
If you have a vector of inputs stored in "a", then
t = 0 : 0.01 : 10;
for thisa = a
x = thisa .* t;
y = sin(x);
plot(x, y);
hold on % <---- THIS
end
zina ben
zina ben il 3 Feb 2012
But if i write a= input ('a')
and i chose any value of( a), after i need plot different graph with different value of( a )in the same figure

Accedi per commentare.

Categorie

Scopri di più su Graphics Performance in Centro assistenza e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by