MATLAB化坐标系(转载的)
plot,plotyy是常用的画图函数,但是默认的格式通常不能准确的画出你想要的图,因此需要很多细节的修改,才能完整准确的表达你的意图。下面列举了一些常用的指令。
[plain] view plain copy
%单y轴
plot(t*1e+9,abs(iGG)/max(abs(iGG)),\'k\',\'linewidth\',2);
axis([-5,5,0,1])
xlabel(\'时间/ns\');
ylabel(\'幅度/a.u.\');
set(get(gca,\'title\'),\'FontSize\',10,\'FontName\',\'宋体\');%设置标题字体大小,字型
set(get(gca,\'XLabel\'),\'FontSize\',10,\'FontName\',\'Times New Roman\');%设置X坐标标题字体大小,字型
set(get(gca,\'YLabel\'),\'FontSize\',10,\'FontName\',\'Times New Roman\');%设置Y坐标标题字体大小,字型
set(gca,\'FontName\',\'Times New Roman\',\'FontSize\',10)%设置坐标轴字体大小,字型
text(0.3,1.2,\'(a)\',\'FontSize\',10,\'FontName\',\'Times New Roman\'); %设置文本字型字号
set(gca, \'XTick\', [0 10 20 30 40 50 60 70 80 90]) %设置X坐标轴刻度数据点位置
set(gca,\'XTickLabel\',{\'0\',\'10\',\'20\',\'30\',\'40\',\'50\',\'60\',\'70\',\'80\',\'90\'}) %设置X坐标轴刻度处显示的字符
set(gca, \'YTick\', [-15 -10 -5 0 5 10 15]) %设置X坐标轴刻度数据点位置
set(gca,\'YTickLabel\',{\'-15\',\'-10\',\'-5\',\'0\',\'5\',\'10\',\'15\'}) %设置Y坐标轴刻度处显示的字符
axis([0,90,-20,20])
set(gca,\'YTickLabel\',[]); %只显示y坐标轴刻度,不显示y坐标轴的值;
set(gca,\'XTickLabel\',[]); %只显示x坐标轴刻度,不显示x坐标轴的值;
set(gca,\'ytick\',[]); %y轴的坐标值和刻度均不显示;
set(gca,\'xtick\',[]); %x轴的坐标值和刻度均不显示;
另外,不均匀的坐标轴显示可以先设置对应的tick,然后设置对应ticklabel。
需要注意的是gca 和get(gca, \' title\')是对应不同属性的修改,不能混用。
单Y参考轴可以直接用gca,双Y轴的时候因为需要对两个对象操作,所以不太一样。在使用plotyy的时候就要注意,需要输出的对象句柄。
[plain] view plain copy
[AX,H1,H2]=plotyy(f*1e-12,abs(T1.*T1),f*1e-12,angle(T1.*T1));
AX代表的是坐标轴,H1,H2对应的是两个绘图线的属性。
[plain] view plain copy
set(AX,\'FontSize\',14,\'FontName\',\'Times New Roman\')%设置x轴、左y轴、右y轴刻度字号和字型
set(AX(1),\'Xcolor\',\'k\',\'Ycolor\',\'k\')%设置x轴、左y轴刻度字体为黑色;
set(AX(2),\'Xcolor\',\'k\',\'Ycolor\',\'k\')%设置x轴、右y轴刻度字体为黑色;
set(AX,\'Xlim\',[207.5 217.1],\'xtick\',[208:1:217])%设置x轴数据范围(207.5到217.1),刻度显示(208,209,210...217)
set(AX(1),\'ylim\',[0,0.5],\'ytick\',[0:0.1:0.5])%设置左y轴数据范围(0到0.5),刻度显示(0,0.1,0.2...0.5)
set(AX(2),\'ylim\',[0,3],\'ytick\',[0:1:3])%设置右y轴数据范围(0到3),刻度显示(0,1,2,3)
set(H1,\'Linestyle\',\'-\',\'color\',\'r\',\'Linewidth\',2.5);%设置第一条曲线的线型、颜色、粗细
line(x,y,\'linestyle\',\'-\',\'color\',\'r\',\'Linewidth\',2.5,\'parent\',AX(1));%在第一条曲线上再画一条曲线。
set(H2,\'Linestyle\',\'-.\',\'color\',\'b\',\'Linewidth\',2.5);%设置第二条曲线的线型、颜色、粗细
set(get(AX(1),\'Ylabel\'),\'string\',\'Amplitude(a.u.)\',\'FontSize\',10,\'FontName\',\'Times New Roman\',\'Position\',[0 0 0 ]);%设置左y轴标题字号字型
set(get(AX(2),\'Ylabel\'),\'string\',\'Phase(rad)\',\'FontSize\',10,\'FontName\',\'Times New Roman\');%设置右y轴标题字号字型
set(get(AX(1),\'Xlabel\'),\'string\',\'Optical frequency(THz)\',\'FontSize\',10,\'FontName\',\'Times New Roman\');%设置x坐标标题字体大小,字型
同样需要注意的是AX, AX(1)与set(AX(1),\'Ylabel\')的使用区别。
请发表评论