由于我想在一个图中描述四条不同的曲线,而且他们可以分成两种情况,每种情况都有两个参数可以作为一个评价标准。而且这两个评价标准的单位差别很大。例如标准1的数值约为10e-09次方,而标准2的数值约为10e04次方,这样如果用plot直接画的画,可能反映不出标准1的差别(由于标准1的实际数值远远小于标准2),所以我希望通过使用plotyy来进行。下面是我的代码:
clc
clear
em=3.5e-11;
t=586.5;h=674.5;
row=1.7e-08;
c0=1.03e-15;cp=1.22e-15;rs=9.6e003;
w=105:5:485;
r=row./(w.*t).*10e18;
%情况1
c10=em.*[w./h+2.22.*(w./(w+0.76.*h)).^3.19+1.17.*(w./(w+1.51.*h)).^0.76.*(t./(t+4.53.*h)).^0.12];
c20=2.*em.*[1.14.*t./w.*(h./(h+2.06.*w)).^0.09+0.2494+2.005.*(h./(h+0.98.*w)).^1.18];
c=c10+c20;
lopt=sqrt(2.*rs.*(c0+cp)./(r.*c));
kopt=sqrt(rs.*c./(r.*c0));
taop=rs.*(c0+cp)./lopt+rs.*c./kopt+r.*kopt.*c0+0.5.*r.*c.*lopt.*10e07;
bw=1./(2.*w.*taop).*10e07;
bwtaop=bw./taop;
a=kopt./lopt;
[AX,H1,H2]=plotyy(w,taop,w,bwtaop,'plot')
set(get(AX(1),'Ylabel'),'String','标准1','linewidth',2.2)
set(get(AX(2),'Ylabel'),'String','标准2','linewidth',2.2)
set(H1,'LineStyle',':','Marker','o','MarkerSize',3.2)
set(H2,'LineStyle','-','Marker','o','MarkerSize',3.2)
hold on
%情况2
s1=255;
c11=em.*[w./h+2.22.*(s1./(s1+0.76.*h)).^3.19+1.17.*(s1./(s1+1.51.*h)).^0.76.*(2.3.*w./(2.3.*w+4.53.*h)).^0.12];
c21=2.*em.*[1.14.*2.3.*w.*(h./(h+2.06.*s1)).^0.09./s1+0.74.*(w./(w+1.59.*s1)).^1.14+1.16.*(w./(w+1.87.*s1)).^0.16.*(h./(h+0.98.*s1)).^1.18];
cpp=c11+c21;
loptp=sqrt(2.*rs.*(c0+cp)./(r.*cpp));
koptp=sqrt(rs.*cpp./(r.*c0));
taopp=rs.*(c0+cp)./loptp+rs.*cpp./koptp+r.*koptp.*c0+0.5.*r.*cpp.*loptp.*10e07;
ap=koptp./loptp;
bwp=1./((w+s1).*taopp).*10e07;
bwptaopp=bwp./taopp;
[AX,H1,H2]=plotyy(w,taopp,w,bwptaopp,'plot')
set(get(AX(1),'Ylabel'),'String','标准1')
set(get(AX(2),'Ylabel'),'String','标准2')
set(H1,'LineStyle',':','Marker','d','MarkerSize',3.2)
set(H2,'LineStyle','-','Marker','d','MarkerSize',3.2)
xlabel('xlabel')
legend('情况1标准1','情况1标准2','情况2标准1','情况2标准2')
hold off
这样的语句跑出来行不通,他只显示了情况1标准1和情况1标准2这两个描述,现在我想要显示四个描述,请问我该怎么处理呢?
希望能得到大家的答案!