Matlab绘制图形的辅助操作:添加图形标注、坐标控制、图形保持、图形窗口的分割

添加图形标注

title(图形标题)
xlabel(x轴说明)
ylabel(y轴说明)
text(x,y,图形说明)
legend(图例1,图例2,…)

1. title函数

>> x=-2*pi:0.05:2*pi;
>> y=sin(x);
>> plot(x,y)
>> title('标题:y=sin(x)')    %在plot绘出的函数图象不退出的情况下输入title语句
 

如果要多行显示的话,需要对多个单引号括起来的内容用大括号括起来。

>> title({
    
    'test','MATLAB'})
 

②:在图形标题中使用LaTex格式控制符

 

2. xlabel函数和ylabel函数

>> x=-2*pi:0.05:2*pi;
>> y=sin(x);
>> plot(x,y)
>> xlabel('-2\pi \leq x \leq 2\pi')
%不需要大括号了,直接 \pi 表示π
 

\pi 输出希腊字母π, \leq :小于或等于   \geq:大于或等于

3. text函数和gtext函数
是title函数的拓展,可以在任意位置输入标注,(x,y)代表标注的坐标。

>> x=-2*pi:0.05:2*pi;
>> y=sin(x);
>> plot(x,y)
>> text(-2*pi,0,'x=-2{\pi}')
>> text(3,0.28,'\leftarrow y=sin(x)')
%仍需要大括号,{
    
    \pi} 表示π,leftarrow表示 ←  ,最好写成'{\leftarrow y=sin(x)}'

gtext函数更便捷,格式为gtext(‘说明’),下标不需要输入了,而是在执行语句后,自己再手动选择在图像的哪个位置添加备注。

4.legend函数
在右上角图标进行注释。

>> x=linspace(0,2*pi,100);
>> plot(x,[sin(x);sin(2*x);sin(3*x)])
>> legend('y=sin(x)','y=sin(2x)','y=sin(3x)')

坐标控制

1. axis函数
格式:axis( [xmin,xmax,ymin,ymax,zmin,zmax]
自己设置绘出图像的坐标范围

>> x=[0,1,1,0,0];
>> y=[0,0,1,1,0];
>> plot(x,y)
>> axis([-0.1,1.1,-0.1,1.1])
 

x=[0,1,1,0,0]; y=[0,0,1,1,0];中描绘了5个坐标,首尾重合。如果只有4个,没有最后的(0,0),那画出来就没有最左边的竖线了。

2.grid命令和box命令

grid命令:给坐标系加减网格
box命令:给坐标系加减边框

grid on / grid 加网格     grid off 去掉网格
box / box off 去掉右边和上边的边框    box on 添加边框回来
实际上,单独box 或者 grid 命令是指在两种状态间进行切换。

>> x=-2*pi:0.05:2*pi;
>> y=sin(x);
>> plot(x,y)
>> grid
>> x=-2*pi:0.05:2*pi;
>> y=sin(x);
>> plot(x,y)
>> box
    

综合运用:绘制sin(x) 、sin(2x)、sin(x/2)的函数曲边并添加图形标注。

>> x=linspace(0,2*pi,100);
>> y=[sin(x);sin(2*x);sin(0.5*x)];
>> plot(x,y)
>> axis([0,7,-1.2,1.2])
>> grid
>> title('不同频率的正弦函数曲线')
>> xlabel('Variable x');   ylabel('Variable y');
>> text(2.5,sin(2.5),'y=sin(x)');
>> text(1.5,sin(2*1.5),'y=sin(2x)');
>> text(5.5,sin(0.5*5.5),'y=sin(x/2)');
>> legend('y=sin(x)','y=sin(2x)','y=sin(x/2)')

图形保持

当绘制出一个图形后,再绘制另一个图形就会刷新掉原有图形,如果想让两个图形都出现在绘图界面,那么就需要hold命令

同box和grid,它也有hold on 、hold off 和 hold 三种命令

例1:用图形保持功能绘制两个同心圆

>> t=linspace(0,2*pi,100);
>> x=sin(t);  y=cos(t);
>> plot(x,y)
>> hold
已锁定最新绘图    //这是运行hold语句后系统给出的提示
>> plot(2*x,2*y,'r')
>> axis([-2.2,2.2,-2.2,2.2])
>> axis equal
 

图形窗口的分割

子图:同一图形窗口中的不同坐标系下的图形称为子图。
subplot函数
格式: subplot(m,n,p)
其中,m和n指定将图形窗囗分成m × n个绘图区,p指定当前活动区。 m行n列

>> subplot(2,2,1)   %将窗口分成了4个小窗口,由于p=1,所以当前的操作只对第一个窗口有效
>> x=linspace(0,2*pi,100);
>> y=sin(x);
>> plot(x,y)
>> subplot(2,2,1)
>> subplot(2,2,2);  //第一排的第2个
>> subplot(2,2,3);  //第二排的第1个
>> subplot(2,2,4);
%依次绘出4个子窗口
 

接下看综合运用

>> x=linspace(0,2*pi,100);
>> subplot(2,2,1)
>> plot(x,sin(x)-1)
>> title('y=sin(x)-1');
>> axis([0,2*pi,-2,0])
>> subplot(2,1,2)
>> plot(x,cos(x)+1)
>> title('y=cos(x)+1');
>> subplot(4,4,3)
>> plot(x,tan(x))
>> title('y=tanx')
>> subplot(4,4,8)
>> plot(x,cot(x))
>> title('y=cot x')
>> axis([0,6,-10,10])

猜你喜欢

转载自blog.csdn.net/HangHug_L/article/details/108126358