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 commentaires

what is the size of y, dfx, and ddfx?
Michael Buls
Michael Buls le 6 Déc 2019
Modifié(e) : Michael Buls le 6 Déc 2019
they are all 1 value off of eachother, 5767, 5766. 5765

Connectez-vous pour commenter.

 Réponse acceptée

Ridwan Alam
Ridwan Alam le 6 Déc 2019
Modifié(e) : Ridwan Alam le 6 Déc 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 commentaires

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.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Programming dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by