changing titles for subplots in a for loop
7 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
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 commentaires
Réponse acceptée
Adam Danz
le 24 Déc 2019
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
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Subplots dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!