Error using plot, vectors must be the same lengths?

g = 9.81;
theta = pi/4;
v = 400;
tmax = ((2*v*sin(theta))/g);
[x, y, t] = projectileMotion(400, pi/4);
[dfx] = derivative(t, y);
[ddfx] = derivative(t, dfx);
plot(y, dfx, ddfx)
xlabel('Time (sec)')
ylabel('y, dy, ddy')
title('Position, Velocity and Acceleration in vertical direction')
When i do this I get the error in the title, please help. Im calling functions that I have already made.

2 Commenti

what is the size of y, dfx, and ddfx?
Michael Buls
Michael Buls il 6 Dic 2019
Modificato: Michael Buls il 6 Dic 2019
they are all 1 value off of eachother, 5767, 5766. 5765

Accedi per commentare.

 Risposta accettata

Ridwan Alam
Ridwan Alam il 6 Dic 2019
Modificato: Ridwan Alam il 6 Dic 2019
Plot() doesn't allow the syntax plot(y1,y2,y3). https://www.mathworks.com/help/matlab/ref/plot.html
If t, y, dfx, and ddfx are of same length, you can try:
plot(t,y,'r',t,dfx,'g',t,ddfx,'b');
Or use
hold on;

4 Commenti

what if i do this?
plot(y)
hold on
plot(dfx)
hold on
plot(ddfx)
hold off
xlabel('Time (sec)')
ylabel('y, dy, ddy')
title('Position, Velocity and Acceleration in vertical direction')
it should work as well
Awesome, thanks for the help!
Sure. Glad it worked.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Programming 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