Plotting two lines

2 Ansichten (letzte 30 Tage)
Abdullah Tamimi
Abdullah Tamimi am 25 Okt. 2011
Im trying to plot an orbit and a line over the fixed point, but with the code i wrote, it only plots the orbit curve. what am i doing wrong?
function speed(v,h);
N=200/.01;
for n=[1:N-1];
v(n+1)=v(n)+.01/20*(-.5*v(n)+h);
end
plot(v);hold on
plot(h/.5,'r--')

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 25 Okt. 2011
What size is h ?
If it is not a scalar then the v(n+1) calculation would return a vector (or array), which would not be storable in the scalar v(n+1)
If, though, h is a scalar, then plot(h,'r--') is asking to plot only a single point at (1,h) which might not be very visible. You could try increasing the MarkerSize to make it more visible. The "--" part of the line specification is not going to do you any good as "--" is only for connecting multiple points.
Perhaps what you want is
plot(N,h,'r--')
??
  5 Kommentare
Abdullah Tamimi
Abdullah Tamimi am 25 Okt. 2011
It is not simultaneous, i enter each orbit individually, so it would look like
speed(25,0)
speed(25,10)
speed(25,-20)
And it should plot three different curves, along with 3 dashed, red lines on the equilibrium speed.
Walter Roberson
Walter Roberson am 26 Okt. 2011
Darn, I had posted complete source for you, but it got lost in the system update.
Anyhow, Try
plot([1 N],[h h] ./ .5,'r--')

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Formatting and Annotation finden Sie in Help 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