1、误差阶的小三角
一直搞不懂这个小三角怎么搞的,看了老师给的程序明白了是根据斜率直接plot就行...我真的菜...and 给三角的边标号以便于一眼看出误差的收敛阶...text(x,y,'marker')里面的坐标一定搞对...
plot([1E-1,4E-1],[1E-5,1E-5],'LineWidth',1.5);plot([4E-1,4E-1],[1E-5,2.7E-4],'LineWidth',1.5);
plot([1E-1,4E-1],[1E-5,4E-5],'LineWidth',1.5);
plot([1E-1,4E-1],[1E-5,9E-5],'LineWidth',1.5);
plot([1E-1,4E-1],[1E-5,2.7E-4],'LineWidth',1.5);
text(4.2E-1,4E-5,'1','FontSize',13);
text(4.2E-1,9E-5,'2','FontSize',13);
text(4.2E-1,2.7E-4,'3','FontSize',13);
效果如下图,主要是对数图的坐标不均匀分布,所以比较丑...
2、对数图
之前的对数图是用loglog函数画的,其实也非常好看,但是源程序是同学的。
这次的是另一种画法吧,除此之外画图当中还有个小问题就是上轴和右轴会消失,用box on可以显示全轴坐标系,小tips。
关于坐标轴标签和坐标轴的距离,参考网上搜的答案,具体的程序如下:
set(gcf, 'position', [0 0 800 600]);
xlabel('h');h = ylabel('Error');
figure_FontSize=20;
box on;
Errk2=A(1,:);Errk3=A(2,:);Errk4=A(3,:);
set(get(gca,'XLabel'),'FontSize',15,'Vertical','top');
set(h,'FontSize',15, 'Units','Normalized');
set(findobj(get(gca,'Children'),'LineWidth',2.),'LineWidth',3.);
set(gca,'XScale','log'); set(gca,'YScale','log');
xlim([10^(-2) 1]);
%axis on;
legend({'k=2','k=3','k=4'},'FontSize',15,'Location','Northwest');
其中x是数组(1*5),A为3*5的矩阵,这里数据略去了。画图当中发现x轴端点值隐藏了,所以xlim出现救场!!
第二个set就是让y轴标签离坐标轴远一点..legend后标签位置为左上(西北)。图如下:
有后续再补充。