How do I plot both of these different sized arrays on the same plot?
Mostrar comentarios más antiguos
So, I am trying to do 1-dim projectile motion for a ping pong ball and a golf ball with drag. I need to plot both of the velocities on one graph, and both of the change in positon (Y) in another. everything else with my code runs smoothly, but when I go to plot them both over time, I get the error:
'Error using plot'
'Vectors must be the same length.'
My vectors are as follows:
%Vpp is a 1x2442 matrix
%Ypp is a 1x2442 matrix
%Tpp is a 1x2442 matrix
%Vgb is a 1x4256 matrix
%Ygb is a 1x4256 matrix
%Tgb is a 1x4256 matrix
My code for plotting is as follows:
subplot(2,1,1)
plot (Tgb,Ygb)
hold on
plot (Tgb,Ypp)
subplot(2,1,2)
plot (Tpp,Vgb)
hold on
plot (Tpp,Vpp)
How do I need to change the code so that I can plot these both on 2 seperate graphs?
2 comentarios
Ajay Kumar
el 12 de Abr. de 2020
If I am not wrong, you are getting this error at this line
plot (Tgb,Ypp)
Because you are trying to plot 4256 elements on x-axis and 2442 elements on y-axis which is ofcourse meaningless.
Can you try to draw the expected output on paint and attach a image here?
Christian Lee
el 12 de Abr. de 2020
Respuesta aceptada
Más respuestas (1)
dpb
el 12 de Abr. de 2020
...
plot (Tgb,Ygb)
...
plot (Tgb,Ypp)
plot (Tpp,Vgb)
...
plot (Tpp,Vpp)
For some reason, you're mixing metaphors here by using what one presumes is time vector for one with position, velocity for the other...
subplot(2,1,1)
title('Position')
plot(Tgb,Ygb,'b-',Tpp,Ypp,'r-')
legend('Golf ball','Ping Pong ball')
subplot(2,1,2)
title('Velocity')
plot(Tgb,Vgb,'b-',Tpp,Vpp,'r-')
legend('Golf ball','Ping Pong ball')
Salt to suit...
Categorías
Más información sobre Data Distribution Plots en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!