当前位置:趣知科普网>母婴教育>学习交流>

如何使用Matlab画图的legend和label?

学习交流 阅读(2.14W)

简介常用的Matlab画图函数,介绍了plot,legend,xlabel,ylabel等函数的深度用法,如双行显示等。

操作方法

(01)首先设定画图的参数。close all 语句清空之前的图,set 语句将背景设置为白色(默认为灰色不适合放论文里),定义一个fontsize变量方便以后使用。

如何使用Matlab画图的legend和label?

(02)画图之前先用figure语句产生一个空图,这样每次生成一幅图都会自动顺序编号。否则用figure(n)指定生成图的编号或名字也可以。

如何使用Matlab画图的legend和label? 第2张
如何使用Matlab画图的legend和label? 第3张

(03)用plot函数在同一图中画两条曲线,两个plot语句中间需用 hold on 语句,否则会默认清除上次plot画的图。另外,线的颜色一般设为黑色(字母k表示)即可(因为有的期刊不能彩印)。这里输出了两条线做对比,第一条点线的宽(1.5)比第二条直线的宽(1.2)大一些,因为点线打印出来会显得比较细,所以需要加宽一下。

如何使用Matlab画图的legend和label? 第4张

(04)图形输出之后还要设置坐标轴(label)上显示的文字,一般就是单位,或者对相应值的说明。有的期刊会要求label要显示双语,所以要中文一行英文一行。显示多行label的代码如图。在大括号内使用分号分割:ylabel({'真值与滤波值';'True value and estimation'},'FontSize',fontsize);

如何使用Matlab画图的legend和label? 第5张
如何使用Matlab画图的legend和label? 第6张

(05)还需要一个图注(legend)来标示这两条曲线。第一句生成legend并获取其句柄('location','best' 让legend位置自动避开曲线);为了双语图注也是两行的,但分行方式与label不一样(使用sprintf('n')来换行)。第二句设置legend为没有框框的(利用获取的句柄h用set(h,'Box','off');)。第三句使用之前定义的fontsize变量设置legend字体大小。

如何使用Matlab画图的legend和label? 第7张
如何使用Matlab画图的legend和label? 第8张

(06)另外legend的位置除'best'外还可以使用''North','East','NorthEast'等设定,下图是North设置的效果。

如何使用Matlab画图的legend和label? 第9张

(07)如果需要,可以在图上标出网格,但会影响legend效果。上述代码之后使用grid on ;语句即可。

如何使用Matlab画图的legend和label? 第10张
如何使用Matlab画图的legend和label? 第11张

(08)Matlab 的画图功能很强大,可以通过帮助系统来获取使用方法,输入help legend,help plot (注意空格)可以得到相应说明。

如何使用Matlab画图的legend和label? 第12张