我在绘图上有13行,每行对应一个文本文件中的一组数据.我想标记每行从第一组数据开始为1.2,然后是1.25,1.30,到1.80等,每个增量为0.05.如果我要手动输入,那就是
legend('1.20','1.25','1.30', ...., '1.80')
Run Code Online (Sandbox Code Playgroud)
但是,在将来,我可能在图表上有超过20行.因此输入每一个都是不现实的.我尝试在图例中创建一个循环,它不起作用.
我怎样才能以实用的方式做到这一点?
N_FILES=13 ;
N_FRAMES=2999 ;
a=1.20 ;b=0.05 ;
phi_matrix = zeros(N_FILES,N_FRAMES) ;
for i=1:N_FILES
eta=a + (i-1)*b ;
fname=sprintf('phi_per_timestep_eta=%3.2f.txt', eta) ;
phi_matrix(i,:)=load(fname);
end
figure(1);
x=linspace(1,N_FRAMES,N_FRAMES) ;
plot(x,phi_matrix) ;
Run Code Online (Sandbox Code Playgroud)
需要帮助:
legend(a+0*b,a+1*b,a+2*b, ...., a+N_FILES*b)
Run Code Online (Sandbox Code Playgroud)