Error using plot Vectors must be the same length.

8 views (last 30 days)
Hi I am pretty new to Matlab and I am trying to plot Acceleration and driving style against time however the time vector is not the same size. I'm not sure how I fix this.
hold on
Acceleration 1x620
ds_mapping 1x620
t_sec 621x1
Please could you advise?

Sign in to comment.

Answers (1)

Sourav Bairagya
Sourav Bairagya on 19 Aug 2019
In your code, “Acceleration” and “ds_mapping”are row vectors whether “t_sec” is a column vector.
Hence, you should first convert “t_sec” into a row vector like “Acceleration”and “ds_mapping”.
Now, as your Y-axis data i.e. “Acceleration” and “ds_mapping” have 620 elements only, hence you should consider only the first 620 elements of your X-axis data i.e. “t_sec”.
A demo code is attached here to illustrate the whole plotting procedure mentioned above:
Acceleration=rand(1,620); % A Demo Acceleration row vector
ds_mapping=rand(1,620); % A Demo ds_mapping row vector
t_sec=rand(621,1); % A Demo t_sec column vector
t_sec=t_sec'; % converting t_sec into a row_vector
plot(t_sec(1:end-1),Acceleration); % Considering only 620 elements of t_sec and plotting
hold on;
plot(t_sec(1:end-1), ds_mapping);
hold off;


Find more on 2-D and 3-D Plots in Help Center and File Exchange


Community Treasure Hunt

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

Start Hunting!

Translated by