Error using Plot, Vectors must be the same length
조회 수: 65 (최근 30일)
이전 댓글 표시
>> 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?!
채택된 답변
Scott MacKenzie
2021년 8월 1일
편집: Scott MacKenzie
2021년 8월 1일
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
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Surface and Mesh Plots에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!