How do I plot both of these different sized arrays on the same plot?
17 次查看(过去 30 天)
显示 更早的评论
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 个评论
Ajay Kumar
2020-4-12
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?
采纳的回答
Rik
2020-4-12
Assuming your x-axis is time and Tgb and Tpp encode that:
subplot(2,1,1)
plot (Tgb,Ygb)
hold on
plot (Tpp,Ypp)
hold off
subplot(2,1,2)
plot (Tgb,Vgb)
hold on
plot (Tpp,Vpp)
hold off
The point is that you should mix different lengths arrays, just like the error is telling you.
更多回答(1 个)
dpb
2020-4-12
...
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...
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Distribution Plots 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!