Error using Plot, Vectors must be the same length

>> Height = [0;3;6;9;12;15];
>> for i = 1:5
subplot(1,5,i)
plot([0;v(:,i)], Height);
ylabel('Height of the structure (m)','FontSize',12);
title(['Mode Shape ',num2str(i)],'FontSize',18)
end
How to rectify this?!

2 Kommentare

Chunru
Chunru am 1 Aug. 2021
what is "v" in your code?
@Chunru Here, v is a 3x3 matrix

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Scott MacKenzie
Scott MacKenzie am 1 Aug. 2021
Bearbeitet: Scott MacKenzie am 1 Aug. 2021

0 Stimmen

Your vector Height has six elements, with 0 as the first element. Given this, your apparent effort to plot v vs. Height is causing the error because [0; v] and Height need to be the same length. The code below achieves this with test data for v (replace as necessary) The code also sets to length(Height) the number of iterations in the for-loop and the number of subplots (adjust as necessary).
% data given in question (6x1 vector)
Height = [0;3;6;9;12;15];
% test data (replace as needed)
v = rand(length(Height)-1,10);
for i = 1:length(Height)
subplot(1,length(Height),i)
plot([0; v(:,i)], Height);
ylabel('Height of the structure (m)','FontSize',12);
title(['Mode Shape ',num2str(i)],'FontSize',10)
end

3 Kommentare

Sir, here, V represents a 3x3 matrix. So is this right sir?
Ok sir! Now understood! Thanks a lot!
You're welcome. Good luck.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Mathematics finden Sie in Hilfe-Center und File Exchange

Produkte

Version

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by