MATLAB技术手册(针对大学课设的技术介绍及仿真实例演示)

目录

保姆级 MATLAB技术手册 1/N(基础篇)

一.常用绘图语句简介及实例

二.绘图修饰命令简介及实例 

三.常用信号生成函数

写在最后

下期预告


保姆级 MATLAB技术手册 1/N(基础篇)

一.常用绘图语句简介及实例

1.figure函数-幕布函数

  • 作用: 创建幕布,即新建一个窗口程序
  • figure(n); 创建幕布,第n个图形窗口为当前窗口且置顶

代码及仿真图

figure;%幕布函数
figure(2);%当前第n窗口为置顶窗口

2.plot函数-线性绘图函数

  • 作用: 用于以线形图的形式来描述输入函数的仿真结果
  • plot(x,y,‘s’); x-横轴变量,y-纵轴变量,‘s’-用于控制图形基本特征,如颜色,粗细,具体对应代码需查表

3.subplot函数:分割显示图形窗口命令

  • 作用: 可以实现多个仿真图集合于同一幕布,便于查看与比较
  • subplot(m,n,i); 将图形窗口分为m行,n列,共m·n个小窗口(均位于同一幕布),并制定第i个小窗口为当前窗口

4.bar函数,stairs函数,stem函数

  • 作用: bar函数-条形图 stairs函数-阶梯图 stem函数-杆图
  • 其语法与plot函数完全相同 不同点在于其仿真图的表现形式分别为条形图,阶梯图,杆图

5.xlim函数-自定义x轴范围

  • 作用:可以实现自定义x轴的范围长度,将仿真图限制于此范围内
  • xlim([m n]);限制x轴的范围为m-n

代码及仿真图

                   %以正弦函数为例
figure;            %生成一块幕布

x=0:0.5:10;        %函数自变量范围 以及频率0.5
y=sin(x);          %函数表达式

subplot(2,2,1);    %在同一块幕布上生成一个2·2个小窗口,第一个窗口
plot(y);           %将函数以线状图的形式输出
xlim([0 13.6]);    %设定仿真图x轴范围为[0-13.6]
title('线状图');    %绘图修饰命令title,以下title命令概念及作用相同

subplot(2,2,2);    %在同一块幕布上生成一个2·2个小窗口,第二个窗口
stem(y);           %将函数以杆状图的形式输出
xlim([0 13.6]);
title('杆状图');

subplot(2,2,3);    %在同一块幕布上生成一个2·2个小窗口,第三个窗口
bar(y);            %将函数以条形图的形式输出
xlim([0 13.6]);
title('条形图');

subplot(2,2,4);    %在同一块幕布上生成一个2·2个小窗口,第四个窗口
stairs(y);         %将函数以阶梯图的形式输出
xlim([0 13.6]);
title('阶梯图');

6.hold on函数,hold off函数

  • 作用:hold on函数: 在同一块幕布上保持原有图形
  • hold off函数: 刷新原有图形

7.axis函数-自定义横纵轴范围函数

  • 作用:自定义x轴范围 自定义y轴范围
  • axis([xmin xman ymin ymax]); xmin-xmax为x轴范围 ymin-ymax为y轴范围
figure;                %幕布函数
                       %以正弦,余弦函数为例
x=0:0.01:10;           %函数自变量范围 以及频率0.01
y1=sin(x);             %函数表达式
plot(y1);
hold on;               %hold on函数 在同一块幕布上保留y1函数

%hold off;            %刷新幕布 hold off在此处起作用即为第二张仿真图 若注释即为第一张仿真图

y2=cos(x);             %函数表达式
plot(y2);
axis([0 1000 -1 1]);   %axis函数 自定义x轴 y轴范围
hold off;             %刷新幕布
hold on函数生效
hold off函数生效

二.绘图修饰命令简介及实例

1.title函数-图形函数(图形置顶位置)

  • 作用: 在幕布上方即置顶位置输出自定义语句
  • title(‘自定义语句’);

2.xlabel函数-x轴说明(图形底侧位置)

  • 作用: 在幕布底侧即横坐标轴下方输出自定义语句
  • xlabel(‘自定义语句’);

3.ylabel函数-y轴说明(图形左侧位置)

  • 作用: 在幕布左侧即纵坐标轴左方输出自定义语句
  • ylabel(‘自定义语句’);

4.text函数-图形说明函数(图中位置)

  • 作用: 在幕布中对图形进行描述
  • text(x,y,‘自定义语句’); x-横坐标,y-纵坐标,‘自定义语句’

5.legend函数-图例说明函数(图形右上位置)

  • 作用: 对图例进行相关注释与说明
  • legend(‘自定义语句’);

代码及仿真图

figure;                           %幕布函数
                                  %以正弦,余弦函数为例
x=0:0.01:2*pi;                    %函数自变量范围 以及频率0.01
y=sin(x);                         %函数表达式
plot(y,'r');
title('sin(x)函数仿真图');         %title图形函数
xlabel('x/采样点');                %xlabel-x轴说明函数
ylabel('y=sin(x)');                %ylabel-y轴说明函数
text(pi/2,0.5,'y=sin(x)');         %text-图形说明函数
legend('正弦函数');                %legend-图例说明函数
axis([0,2*pi/0.01,-1,1]);          %axis函数 自定义x轴 y轴范围

三.常用信号生成函数

1.zeros

  • 作用: 产生全零阵列
  • X=zeros(n); 产生N行N列的全0矩阵
  • X=zeros(m.n); 产生M行N列的全0矩阵

代码及仿真图

figure;                  %幕布函数
y=zeros(3);              %zeros函数
                         %产生一个3行3列的全零矩阵
stem(y);                 %杆状图仿真
title('3行3列的全零矩阵');

2.ones

  • 作用: 产生全1阵列
  • X=ones(n); 产生N行N列的全1矩阵
  • X=ones(m.n); 产生M行N列的全1矩阵

代码及仿真图

figure;                  %幕布函数
y=ones(3);               %ones函数
                         %产生一个3行3列的全1矩阵
stem(y);                 %杆状图仿真
title('3行3列的全1矩阵');


3.sinc-辛格函数

  • Y=sinc(x);
  • 关于辛格函数的相关解析:
  • sinc(x)与Sa(t)一致 (信号与系统领域)
  • ①归一化的sinc(x)
  • ②非归一化的sinc(x)
  • 在这里插入图片描述
  • 在这里插入图片描述
  • 即在数学领域sinc(x)与Sa(t)几乎一致
  • ③sinc函数是矩形脉冲的傅里叶变换

代码及仿真图

figure;                      %幕布函数
x=-10:0.1:10;                %函数自变量范围 以及频率0.1
y=sinc(x);                   %函数表达式
plot(y);                     %线状图仿真
title('辛格函数sinc(x)');
axis([0,20/0.1,-0.5,1.5]);   %x轴,y轴取值范围

4.rectpuls-矩形脉冲信号

  • 作用: 产生矩形脉冲信号
  • Y=rectpuls(T); 产生高度为1,宽度为1,关于T=0对称的矩形脉冲
  • Y=rectpuls(T,W);产生高度为1,宽度为W,关于T=0对称的矩形脉冲,该函数的横坐标范围由T来决定,由T=0向左右扩展,W为其产生高度为1的矩形脉冲的范围

代码及仿真图

T=-2:1:2;       %T的取值范围 即其范围为[-2,-1,0,1,2]
Y=rectpuls(T);  %矩形脉冲信号函数 即默认T=0时,产生高度为1,宽度为1的矩形脉冲信号

T=-4:1:4;         %T的取值范围 即其范围为[-4,-3,-2,-1,0,1,2,3,4]
W=3;              %脉冲信号的宽度 即其宽度为3
Y=rectpuls(T,W);  %矩形脉冲信号函数 即产生一个以T=0为中心,向左右扩展,宽度为W的高度为1,宽度为1的脉冲信号
plot(Y);          线状图仿真

补充:图形始终是以T=0时刻为基准产生一个高度为1的脉冲信号,宽度默认为1或者自定义为W,若T的范围覆盖不含0,则其结果均为0,同时在以宽度W为基准向左右扩展时,优先级为左大于右,即若W=2,则T=0时结果为1,其左边也由0变为1,若W=3,则其左右各由0变为1。

5.rand-伪随机序列

  • 作用: 产生伪随机序列
  • Y=rand(1,N); 产生[0,1]上均匀分布的随机序列
  • Y=randn(1,N); 产生均值为0,分差为1的白噪声序列

​6.sawtooth-周期锯齿波或三角波

  • Y=sawtooth(T); 产生幅度值为±1,以2π为周期的锯齿波
  • Y=sawtooth(T,width); 产生幅度值为±1,以2π为周期的锯齿波或三角波,width决定每个周期内波峰处于周期的相对位置

代码及仿真图

T=0:0.01:10*pi;                           %采样范围及采样间隔
Y=sawtooth(T);                            %周期锯齿或三角波函数
plot(T,Y); 
axis([0,10*pi -1 1]);
title('周期锯齿或三角波函数sawtooth');

T=0:0.01:10*pi;                     %采样范围及采样间隔
Y=sawtooth(T,0.5);                  %此时width=0.5,即波峰位于每个周期正中间
plot(T,Y);                         
axis([0,10*pi -1 1]);
title('周期锯齿或三角波函数sawtooth');

7.square-方波

  • Y=square(T); 产生幅度值为±1,以2为周期的方波
  • Y=square(T,duty); 产生幅度值为±1,以占空比为duty的方波

代码及仿真图

T=0:0.01:4*pi;                   %采样范围及采样间隔
Y=square(T);                     %周期方波函数square
plot(T,Y);                       %线状图仿真
axis([0 4*pi -1 1]);             %自定义x轴 y轴范围
title('周期方波函数square');

T=0:0.01:4*pi;                   %采样范围及采样间隔
Y=square(T,25);                  %周期方波函数square 占空比为25(25%) 即幅度为1的部分占周期的25%
plot(T,Y);                       %线状图仿真
axis([0 4*pi -1 1]);             %自定义x轴 y轴范围
title('周期方波函数square');

8.fliplr-序列左右翻转

  • 作用: 使序列关于中心对称左右翻转
  • Y=fliplr(X);

代码及仿真图

X=[1,2,3,4,5,6]; %序列X
Y=fliplr(X);     %序列左右翻转函数
                 %序列[1,2,3,4,5,6]中心对称翻转为[6,5,4,3,2,1]

9.cumsum,sum-计算序列累加

  • Y=sum(x);
  • Y=cumsum(x); 向量x元素累加,记录每一次的累加结果,而sum函数只记录最后结果

代码及仿真图

X=[1,2,3,4,5,6];  %序列X
Y=sum(X);         %sum函数 只记录并输出最后一次结果
Z=cumsum(X);      %cumsum函数 记录并输出每一次累加结果

写在最后


本篇技术手册全篇内容均为原创,对内容的解析为在查阅多方资料后的自身理解,读者大大如有不懂或发现任何问题欢迎在评论区提出或者私聊指正(评论必看 私信必回)

同时这篇文章是我MATLAB技术手册专题的第一部,后续内容将会逐渐涉及其余的一些函数介绍,函数与序列的时频域转换与仿真,傅里叶变换原理及信号的调制与解调等内容

敬请期待~~~

下期预告


MATLAB function自定义函数说明

MATLAB 实现信号的四则运算 时间变换 卷积运算

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

文豪野橘Sam

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值