changing titles for subplots in a for loop
조회 수: 7 (최근 30일)
이전 댓글 표시
hello
I have a code like this
for s=1:8;
r=[16,81,22,87,25,90,26,91];
subplot(4,2,s)
plot(tf,Js(1:length(tf),r(s)));
xlabel('$t_f$','interpreter','latex')
ylabel('$J$','interpreter','latex')
end
and I want the following titles for each subplot
x/D=1,z/h=0.13 , x/D=1,z/h=0.8
x/D=4,z/h=0.13 , x/D=4,z/h=0.8
x/D=8,z/h=0.13 , x/D=8,z/h=0.8
x/D=12,z/h=0.13 , x/D=12,z/h=0.8
what is the best way for that?
thanks
댓글 수: 0
채택된 답변
Adam Danz
2019년 12월 24일
Use sprintf() to define the subplot titles.
titleRows = repmat([1;4;8;12],1,2).'; % x/D values
titleCols = repmat([0.13, 0.8],4,1).'; % z/h values
for s=1:8
r=[16,81,22,87,25,90,26,91];
subplot(4,2,s)
plot(tf,Js(1:length(tf),r(s)));
xlabel('$t_f$','interpreter','latex')
ylabel('$J$','interpreter','latex')
title(sprintf('x/D=%.0f, z/h=%.2f',titleRows(s),titleCols(s)))
end
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Subplots에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!