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

 Akzeptierte Antwort

Sean de Wolski
Sean de Wolski am 3 Feb. 2012

0 Stimmen

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

5 Kommentare

zina ben
zina ben am 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 am 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 am 3 Feb. 2012
but i need the graphe for each one value of a in the same figure
Sean de Wolski
Sean de Wolski am 3 Feb. 2012
This answer had that...
Walter Roberson
Walter Roberson am 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.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Walter Roberson
Walter Roberson am 3 Feb. 2012

0 Stimmen

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 Kommentare

zina ben
zina ben am 3 Feb. 2012
thinks,
It is a simple idea
Walter Roberson
Walter Roberson am 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 am 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

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Graphics Performance finden Sie in Hilfe-Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by