matlab离散信号的绘制

首先是简单的特定离散信号的绘制,一个简单的stem函数即可

%%
%绘制特定离散信号
x=[-1,1,2,1,0,-1];
n=[-1,0,1,2,3,4];
figure('name','离散信号')
stem(n,x)

其次是单位冲激响应序列,采取1到50个数(代码后面为仿真图,后面不再叙述)

%%
%绘制单位冲激序列
N=50;
x1=[1,zeros(1,N-1)]; %单位冲激响应,1行49列的全零矩阵,即第一个数是1,后面49都是0
figure('name','单位冲激序列');
stem(x1,'filled');   %实数点

matlab离散信号的绘制_第1张图片

 再次为单位阶跃响应序列

%绘制单位阶跃序列
N=30;
x2=ones(1,N);        %单位阶跃响应
figure('name','单位阶跃序列');
stem(x2);   

matlab离散信号的绘制_第2张图片

 下面是实指数序列

%%
%绘制实指数序列
N=50;
n=0:N-1;
a=0.8;
x3=a.^n;             %实指数序列
figure('name','实指数序列');
stem(x3);  

matlab离散信号的绘制_第3张图片

 下面是正弦序列

%绘制正弦序列
N=50;
n=0:0.1:N-1;
w0=pi/3;
ang=pi/6;
x4=sin(n*w0+ang);    %正弦序列
figure('name','正弦序列');
%plot(x4);          %绘制正弦函数
stem(x4);       
axis([0,100,-2,2]);  %限幅

matlab离散信号的绘制_第4张图片

 下面是复指数序列,依次为复指数序列的实部和虚部

%%
%绘制复指数序列
N=50;
a=0.6;
n=0:0.1:N-1;
w0=pi/3;
ang=pi/6;
x5=exp((a+j*w0)*n);  %复指数序列
figure('name','复指数序列');
%stem(real(x5));    %复指数序列实部
stem(imag(x5));     %复指数序列虚部

matlab离散信号的绘制_第5张图片matlab离散信号的绘制_第6张图片

 最后是所有代码的结合,有需要的直接复制进入matlab便可以使用

%%
clc;          %清除命令区
clear all;    %清除工作区
%%
%绘制特定离散信号
x=[-1,1,2,1,0,-1];
n=[-1,0,1,2,3,4];
%%
%绘制单位冲激序列
N=50;
x1=[1,zeros(1,N-1)]; %单位冲激响应,1行49列的全零矩阵,即第一个数是1,后面49都是0
%%
%绘制单位阶跃序列
N=30;
x2=ones(1,N);        %单位阶跃响应
%%
%绘制实指数序列
N=50;
n=0:N-1;
a=0.8;
x3=a.^n;             %实指数序列
%%
%绘制正弦序列
N=50;
n=0:0.1:N-1;
w0=pi/3;
ang=pi/6;
x4=sin(n*w0+ang);    %正弦序列
%%
%绘制复指数序列
N=50;
a=0.6;
n=0:0.1:N-1;
w0=pi/3;
ang=pi/6;
x5=exp((a+j*w0)*n);  %复指数序列
%%
figure
subplot(5,1,1);
stem(x1);
ylabel('单位冲激序列');
subplot(5,1,2);

stem(x2);
ylabel('单位阶跃序列');

subplot(5,1,3);
stem(x3);
ylabel('实指数序列');

subplot(5,1,4);
stem(x4);
ylabel('正弦序列');

subplot(5,1,5);
stem(x5);
ylabel('复指数序列');

matlab离散信号的绘制_第7张图片 

 

你可能感兴趣的:(数字信号处理,通信工程,信号与系统,matlab,开发语言,windows,图像处理)