Matlab 二维绘图函数(plot类)

时间:2022-04-07 09:18:03

plot

功能

绘制二维图形的最基本函数。

语法

//x为向量时,以x的元素值为纵坐标,x的序号为横坐标绘制曲线。
//x为矩阵时,以其序号为横坐标,按列绘制每列元素值相对于其序号的曲线。
polt(x)
//以x 元素为横坐标值,y 元素为纵坐标值绘制曲线
plot(x,y)
//以公共的x 元素为横坐标值,以y1,y2,… 元素为纵坐标值绘制多条曲线
plot(x,y1,x,y2,…)

其他属性参数:

符号 作用 符号 作用 符号 作用 符号 作用
y - 实线 . < 小于号
m : 点线 o s 正方形
c -. 点划线 x 叉号 d 菱形
r 红色 虚线 + 加号 h 六角星
g 绿 * 星号 p 五角星    
b v 向下三角形        
w ^ 向上三角形        
k > 大于号      

eg

clear;
clc;
clf;
x = linspace(,*pi,);
y = sin(x);
plot(x,y)
xlabel('x轴')
ylabel('y轴')
title('题目')
gtext('正弦曲线') %图形上出现十字线,鼠标控制其移动,单击鼠标显示文字

ezplot

功能

无需数据准备,直接画出函数图形

语法

//在默认区间[-2pi,2pi]上绘制函数f=f(x)
ezplot(f)
//在区间min < x < max上绘制函数 f = f(x)
ezplot(f,[min,max])
//对于隐式定义的函数f = f(x,y):ezplot(f)绘制的是 f(x,y) = 0
ezplot(f,[xmin,xmax,ymin,ymax])
//绘制含参函数 x = x(t)和y = y(t) 默认区间: 0 < t < 2pi.
ezplot(x,y)
//绘制含参函数 x = x(t)和y = y(t) 区间:tmin < t < tmax.
ezplot(x,y,[tmin,tmax])
//在指定的区域,在figure窗口绘制通过handle figure指定的函数
ezplot(...,figure_handle)

fplot

功能

通过MATLAB平台内部设置的自适应算法来动态决定自变量的离散间隔,当函数值变化缓慢时离散间隔取大些,当函数值变化剧烈时,离散间隔取小一些。

语法

//在limits定义的自变量的取值范围[xmin,xmax]内
//或者在自变量与因变量的取值范围[xmin,xmax;ymin,ymax]内,绘制fun函数。
fplot(fun,limits)
//在limits定义的取值范围内,在Linespace所规定的线型、标记、颜色等属性下,绘制fun函数
fplot(fun,limits,LineSpace)
//在limits定义的取值范围内,在LineSpace所规定的线型、颜色、标记等属性下,在tol所规定的相对误差内绘制fun函数,
fplot(fun,limits,tol,LineSpace)
//在limits定义的取值范围内绘制fun函数,至少绘制n+1个点。
fplot(fun,limits,n)

eg

//函数
function Y = fun(x)
Y(:,) = * sin(x(:)) ./ x(:);
Y(:,) = x(:) .^ ;
end //
fplot('fun',[- ])

subplot

功能

分割figure,创建子坐标系(并不绘图)

语法

//将figure分为m × n块,在第p块创建坐标
h = subplot(m,n,p) or subplot(mnp)
//如果所指定的坐标系已存在,那创建新坐标系替换它
subplot(m,n,p,'replace')
//p为向量,表示将P中指定的小块合并成一个大块创建坐标系,P中指定的小块可连续也可不相连。
subplot(m,n,P)
//将坐标系h设为当前坐标系,相当于axes(h)
subplot(h)
//在指定位置创建一个新坐标系
subplot('Position',[left bottom width height])
//在创建坐标系的同时,设置相关属性
subplot(..., prop1, value1, prop2, value2, ...)
//返回所创建坐标系的句柄
h = subplot(...)

eg:

clear;
clc;
t = -:0.001:;
ut1 = stepfun(t,-)
ut2 = stepfun(t,)
gt = ut1 - ut2;
subplot(,,);
plot(t,ut1);
axis([-,,-0.5,1.5]); subplot(,,);
plot(t,ut2);
axis([-,,-0.5,1.5]); subplot(,,);
plot(t,gt);
axis([-,,-0.5,1.5]);

结果:

Matlab  二维绘图函数(plot类)

PS: stepfun函数实现单位阶跃信号

PPS:其他常用的二维绘图函数

semilogx(x,y)   //半对数坐标,x轴为常用对数坐标
semilogy(x,y) //半对数坐标,y轴为常用对数坐标
loglog(x,y) //全对数坐标
pause // 用在plot命令之间,暂停命令执行,直到敲击任意键