changing titles for subplots in a for loop
3 次查看(过去 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!