title subplots within a for loop
조회 수: 38 (최근 30일)
이전 댓글 표시
Hello,
I am trying to make a figure with subplots from a for loop. I have been successful, however when I want to assign a title to each run and thus subplot, the figure that matlab is plotting is very strange.
for ll= L(irun)
Ax= z(:,1) + l(1)*z(:,3);
Ay= z(:,2) - l(3)*z(:,3);
figure(10)
hold on
subplot(7,1,irun);
title (ll,"(m)")
hold on
plot(t,Ax)
hold on
plot(t,Ay)
hold on
legend('X Direction (m)', 'Y Direction (m)')
hold on
sgtitle(' Leg A Motion At Different Deck Heights')
end

This is what it is giving me but it should give me the figure below with titiles starting from 20 through to 50. The title below comes from commenting the line:
title (ll,"(m)")

Any advice would be greatly appreciated.
Thank you.
댓글 수: 0
추가 답변 (1개)
Jan
2022년 11월 17일
편집: Jan
2022년 11월 17일
Avoid the overkill of hold on commands. One per subplot is sufficient.
What is the purpose of the "ll" here:
title(ll,"(m)")
^^
? What does "titles starting from 20 through to 50" mean?
What is irun and L?
for ll= L(irun)
Try this:
for k = 1:7
subplot(7,1,k);
plot(1:10, rand(1, 10));
hold on
title("Plot " + k)
end
댓글 수: 4
Image Analyst
2022년 11월 17일
Did you try
figure(10);
for ll= L(irun)
Ax= z(:,1) + l(1)*z(:,3);
Ay= z(:,2) - l(3)*z(:,3);
subplot(7,1,irun);
hold on
plot(t,Ax)
plot(t,Ay)
caption = sprintf('%d meters', ll);
title (caption,"(m)")
legend('X Direction (m)', 'Y Direction (m)')
end
sgtitle('Leg A Motion At Different Deck Heights');
참고 항목
카테고리
Help Center 및 File Exchange에서 Title에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
