Bonjour,
je reformule ma question plus clairement avec un bout de code que vous pouvez copier-coller:
vous voyez les étiquettes de l'axe de droite s'affiche joliment 10^-10 et non 1e-010. Mais les limites et les ytick sont pourries. J'ai donc mis des limites manuellement:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 paraName={'k11','k13','k33'}; paraName2=paraName; paraName2(length(paraName)+1)={'residual'}; mPara=[1.6 1.5 0.6; 1.4 1.3 0.8 ; 1.2 1.05 0.96 ; 1.1 1.02 0.98; 1 1 1]; mReNorm=[0.1 0.01 0.001 0.0001 0.000001]; mParaSize=size(mPara); mReNormLen=length(mReNorm); if (mParaSize(1)~=mReNormLen) error('myApp:argChk', 'ERROR interations number must be the same for residual norm and parameters values') end %plot x=1:mReNormLen; figure; [AX,H1,H2]=plotyy(x,mPara,x,mReNorm,@plot, @semilogy); set(H1,'marker','*') set(H2,'LineStyle','--','marker','o') xlabel('number of iteration'); title('parameters convergence'); set(get(AX(1),'Ylabel'),'String','Parameters') set(get(AX(2),'Ylabel'),'String','Residual norm') set(AX,'Xtick',1:1:mReNormLen) set(AX,'XtickLabel',0:1:(mReNormLen-1)) % set(AX(1),'ylim', [0.4 1.6]) % set(AX(2),'ylim', [1e-10 1e0]) % set(AX(1),'Ytick',0.4:0.2:1.6) % set(AX(1),'YtickLabel',0.4:0.2:1.6) % set(AX(2),'Ytick',[10^-10 10^-8 10^-6 10^-4 10^-2 10^0]) % set(AX(2),'YtickLabel',[10^-10 10^-8 10^-6 10^-4 10^-2 10^0]) set(H1(1),'marker','*') set(H1(2),'marker','s') set(H1(3),'marker','d') grid on h=legend(paraName2);
et là la figure est comme je le veux mais l'affichage de l'axe de droite se fait en 1e-010. comment changer ça? ou comment faire pour qu'il scale correctement les limites?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 paraName={'k11','k13','k33'}; paraName2=paraName; paraName2(length(paraName)+1)={'residual'}; mPara=[1.6 1.5 0.6; 1.4 1.3 0.8 ; 1.2 1.05 0.96 ; 1.1 1.02 0.98; 1 1 1]; mReNorm=[0.1 0.01 0.001 0.0001 0.000001]; mParaSize=size(mPara); mReNormLen=length(mReNorm); if (mParaSize(1)~=mReNormLen) error('myApp:argChk', 'ERROR interations number must be the same for residual norm and parameters values') end %plot x=1:mReNormLen; figure; [AX,H1,H2]=plotyy(x,mPara,x,mReNorm,@plot, @semilogy); set(H1,'marker','*') set(H2,'LineStyle','--','marker','o') xlabel('number of iteration'); title('parameters convergence'); set(get(AX(1),'Ylabel'),'String','Parameters') set(get(AX(2),'Ylabel'),'String','Residual norm') set(AX,'Xtick',1:1:mReNormLen) set(AX,'XtickLabel',0:1:(mReNormLen-1)) set(AX(1),'ylim', [0.4 1.6]) set(AX(2),'ylim', [1e-10 1e0]) set(AX(1),'Ytick',0.4:0.2:1.6) set(AX(1),'YtickLabel',0.4:0.2:1.6) set(AX(2),'Ytick',[10^-10 10^-8 10^-6 10^-4 10^-2 10^0]) set(AX(2),'YtickLabel',[10^-10 10^-8 10^-6 10^-4 10^-2 10^0]) set(H1(1),'marker','*') set(H1(2),'marker','s') set(H1(3),'marker','d') grid on h=legend(paraName2);
Partager