Error in legends of subplots using a for loop

2 visualizaciones (últimos 30 días)
Anil
Anil el 13 de Jun. de 2024
Editada: Anil el 13 de Jun. de 2024
I want legends g_1=fr(1), g_1=fr(2), g_1=fr(3) for each plots in each window ha(kk). I am doing some mistake in legends, but couldn't figured it out. Any suggestions please. Thanks.
[ha, pos]= tight_subplot(4,3,[.1 .15],[.13 .01],[.13 .1]);
fr=([0.1, 0.5, 1]);
[h0, h1]=size(fr);
% for jj=1:h1
for jj=1:3
for kk=1:12
lin={'--','-.',':'};
axes(ha(kk));
x=load(sprintf('frq_%d%d.dat',jj,kk));
x1(jj)=loglog(x(:,33),x(:,kk+5),'linestyle',lin{jj},'LineWidth', 2.5);
hold on
ylabel([ha(1),ha(4), ha(7),ha(10)],'\Delta\omega_{}')
xlabel([ha(10), ha(11),ha(12)],'\Delta\omega_{o}')
% legend([x1([1 2 3])],{'$g_1=fr(%d)$',jj},'Fontsize',34,'Location','northwest','Interpreter', 'latex');
legend([x1([jj])],{'\rm{"$g_1{'+fr{jj}+'}$"}'},'Fontsize',34,'Location','northwest','Interpreter', 'latex');
legend('boxoff')
end
end

Respuestas (1)

Shivani
Shivani el 13 de Jun. de 2024
Hello @Anil,
Without the 'frq_%d%d.dat' files, I will not be able to recreate the plots at my end to provide an accurate solution. However, I have provided one approach to format the legend as per my understanding in the code snippet below.
legendString = sprintf('\\it{g_{1}=fr(%1.1f)}', fr(jj));
legend(x1(jj), legendString, 'FontSize', 34, 'Location', 'northwest', 'Interpreter', 'latex');
legend('boxoff')
  1 comentario
Anil
Anil el 13 de Jun. de 2024
Editada: Anil el 13 de Jun. de 2024
Hi Shivani,
Thanks for that.
I used
legendString =sprintf('$g_1=%f $',fr(jj));
to get g_1=0.1 , g_1=0.5 and so on, which wokrs for me. But it gets overwritten for next value of jj and doesn't show a separate legend for that. Any suggestions, please. Thanks.

Iniciar sesión para comentar.

Productos


Versión

R2023b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by