利用matlab怎样进行频谱分析

利用matlab怎样进行频谱分析,第1张

完整的程序

%写上标题

%设计低通滤波器:

[N,Wc]=buttord()

%估算得到Butterworth低通滤波器的最小阶数N和3dB截止频率Wc

[a,b]=butter(N,Wc); %设计Butterworth低通滤波器

[h,f]=freqz(); %求数字低通滤波器的频率响应

figure(2); % 打开窗口2

subplot(221); %图形显示分割窗口

plot(f,abs(h)); %绘制Butterworth低通滤波器的幅频响应图

title(巴氏低通滤波器'');

grid; %绘制带网格的图像

sf=filter(a,b,s); %叠加函数S经过低通滤波器以后的新函数

subplot(222);

plot(t,sf); %绘制叠加函数S经过低通滤波器以后的时域图形

xlabel('时间 (seconds)');

ylabel('时间按幅度');

SF=fft(sf,256); %对叠加函数S经过低通滤波器以后的新函数进行256点的基—2快速傅立叶变换

w= %新信号角频率

subplot(223);

plot()); %绘制叠加函数S经过低通滤波器以后的频谱

title('低通滤波后的频谱图');

%设计高通滤波器

[N,Wc]=buttord()

%估算得到Butterworth高通滤波器的最小阶数N和3dB截止频率Wc

[a,b]=butter(N,Wc,'high'); %设计Butterworth高通滤波器

[h,f]=freqz(); %求数字高通滤波器的频率响应

figure(3);

subplot(221);

plot()); %绘制Butterworth高通滤波器的幅频响应图

title('巴氏高通滤波器');

grid; %绘制带网格的图像

sf=filter(); %叠加函数S经过高通滤波器以后的新函数

subplot(222);

plot(t,sf); ;%绘制叠加函数S经过高通滤波器以后的时域图形

xlabel('Time(seconds)');

ylabel('Time waveform');

w; %新信号角频率

subplot(223);

plot()); %绘制叠加函数S经过高通滤波器以后的频谱图

title('高通滤波后的频谱图');

%设计带通滤波器

[N,Wc]=buttord([)

%估算得到Butterworth带通滤波器的最小阶数N和3dB截止频率Wc

[a,b]=butter(N,Wc); %设计Butterworth带通滤波器

[h,f]=freqz(); %求数字带通滤波器的频率响应

figure(4);

subplot(221);

plot(f,abs(h)); %绘制Butterworth带通滤波器的幅频响应图

title('butter bandpass filter');

grid; %绘制带网格的图像

sf=filter(a,b,s); %叠加函数S经过带通滤波器以后的新函数

subplot(222);

plot(t,sf); %绘制叠加函数S经过带通滤波器以后的时域图形

xlabel('Time(seconds)');

ylabel('Time waveform');

SF=fft(); %对叠加函数S经过带通滤波器以后的新函数进行256点的基—2快速傅立叶变换

w=( %新信号角频率

subplot(223);

plot(')); %绘制叠加函数S经过带通滤波器以后的频谱图

title('带通滤波后的频谱图');

太模糊了,问题也不是很清楚。

如果单纯调用的话,直接在button->callback里面添加所需的函数;

axes(handlesaxes1) %指定‘tag’为‘axes1’的坐标轴

plot(x1,y1);

axes(handlesaxes2) %指定‘tag’为‘axes2’的坐标轴

plot(x2,y2);

。。。

这个x1 x2 y1 y2,你应该在程序中是传递过来的参数,或者是全局变量。

如果你一点都不懂,建议你买本MATLAB/GUI的书回去参考,很多基础的东西都有。

你的频谱横坐标不对,改了一下

A=2;

a=-05;

N = 500;

t=linspace(0,10,N);

ft=Aexp(at);

y=fft(ft);

subplot(211)

plot(t,ft);

title('单边衰减指数信号');

subplot(212)

fre = 1/10(0:N/2);

amp = abs(y);

plot(fre,amp(1:N/2+1));

title('傅立叶变换');

xlabel('频率(Hz)')

grid on;

问题一:怎么画频谱图? 在matlab中应用fft求傅立叶变换后,如果想画出频谱图,必须用fftshift命令处理变换的结果。

例子如下:clear;clc;t=0:0001:2;n=2001;Fs=1000;Fc=200;x=cos(2piFct);y1=fft(x);y2=fftshift(y1);f=(0:2000)Fs/n-Fs/2;hold on;plot(f,abs(y1),'r') plot(f,abs(y2),'b')结果如下图:

图中红色是没经过fftshift处理的频谱图,蓝色是经过处理之后的。结合程序,显然x的频谱应该位于200Hz处,经过fftshift处理的蓝色频谱是正确的。

注意:红色和蓝色的曲线在两边分别关于-250Hz和250Hz对称,这并不是偶然。

问题二:matlab如何绘制三维时频谱图 10分 你的频谱横坐标不对,改了一下 A=2; a=-05; N = 500; t=linspace(0,10,N); ft=Aexp(at); y=fft(ft); subplot(211) plot(t,ft); title('单边衰减指数信号'); subplot(212) fre = 1/10(0:N/2); amp = abs(y); plot(fre,amp(1:N/2+1)); title('傅立叶变换'); xlabel('频率(Hz)') grid on;

问题三:频谱图怎么画 幅度谱和相位谱是什么意思 信号的频谱图是对信号进行频域描述的结果。如果信号满足傅里叶展开的条件,在任一信号都可以用无穷多个不同频率的正弦信号的和来描述。而每一个正弦信号的频率、相位和幅值的 构成了该信号的频谱。每个不同频率正弦信号的幅值描述称为幅值谱,每个不同频率正弦信号的相位描述称为相位谱。

问题四:这个周期梯形信号的频谱图是怎么画出来的? 用matlab画

x=10x2;%所求的周期脉冲信号

N=8;%长度为8

n=[0:1:N-1];

k=[0:1:N-1];

WN=exp(-j2pi/N);

nk=n'k;

WNnk=WN^nk;Xk=xWNnk;magXk=abs([Xk(N/2+1:N),Xk(1:N/2+1)]);

subplot(2,1,1);stem(n,x);%画出周期脉冲信号

subplot(2,1,2);stem(k,magXk);

xlabel('k');ylabel('Xtilde(k)');

title('DFS of SQwave :L=2,N=8')%该信号频谱图

不好意思写掉了一点

x1=ones(1,2);

x2=[x1,zeros(1,6)];

x=10x2;%所求的周期脉冲信号N=8;%长度为8

n=[0:1:N-1];

k=[0:1:N-1];

k1=[-N/2:N/2];

WN=exp(-j2pi/N);

nk=n'k;

WNnk=WN^nk;

Xk=xWNnk; magXk=abs([Xk(N/2+1:N),Xk(1:N/2+1)]);

subplot(2,1,1);stem(n,x);%画出周期脉冲信号

subplot(2,1,2);stem(k1,magXk);

xlabel('k1');ylabel('Xtilde(k)');

title('DFS of SQwave :L=2,N=8')%该信号频谱图

你试一试看看,我运行了是正确的

问题五:信号与系统中的频谱图怎么画 频谱图以横轴纵轴的波纹方式,记录画出各种信号频率的图形资料。作用不同希望帮到你o(∩_∩)o 不懂追问哦 追问: 还是不太明白,请您举例说明一下吧例如,您大致画一下这道题里的输入信号e(t)的频谱图吧然后截上来给我看看吧我就是看书看不懂才来问的您光这么说理论我恐怕无法理解其中Sa(100t)=sin(100t)/100t 平方应该就是整体平方 回答: 额波形图可以接收和显示多种类型和格式的数据频谱图不过图形资料 追问: 求您了,把我那题里的频谱图画出来吧图形资料什么的,就算像您这么讲,我也没思路不是没准看您画完了我就会画了几天后的考试要用的,还是不会画,算我求您了,实际画一个吧 回答: 画不了准确的,应该不考的吧 追问: 绝对会考,我们上学期期末考试就考了还三四道题都要求画频谱图那个就是原题 回答: 恕我无能为力

问题六:频谱图怎么画 幅度谱和相位谱是什么意思 幅度谱,也就是频谱,从构成这个波形的各个频率分量的侧面看过去,每一个频率分量都会在侧面投影成一个高度为幅值的线段,构成频谱。右视图

相位谱则是从频率分量的下方往上看,选择一个基准点,那么各个频率分量的波形峰值在底面的投影点就会不一样,再根据-π到π的范围就可以画出相位谱。

问题七:频谱图怎么画 幅度谱和相位谱是什么意思 尘国营詹欠政见呐

问题八:频谱图怎么画 幅度谱和相位谱是什么意思 我谈谈我的看法,脉冲信号首先只是一种理想信号,仅仅是用于理论分析实际是无法利用的,经过傅立叶变换后结果是一个常数,也就是说频谱图是一条横线,是白色谱,频域是理想化的。那就意味着从直流分量至无穷大频率的正弦波均需要且幅度为那个常数。但是相位貌似无法确定(或者说就是任意的),很多教材都没有谈这个问题,直接给了频谱图。此答案仅供参考,纯属个人的想法,不一定正确。

问题九:怎么画频谱图? 在matlab中应用fft求傅立叶变换后,如果想画出频谱图,必须用fftshift命令处理变换的结果。

例子如下:clear;clc;t=0:0001:2;n=2001;Fs=1000;Fc=200;x=cos(2piFct);y1=fft(x);y2=fftshift(y1);f=(0:2000)Fs/n-Fs/2;hold on;plot(f,abs(y1),'r') plot(f,abs(y2),'b')结果如下图:

图中红色是没经过fftshift处理的频谱图,蓝色是经过处理之后的。结合程序,显然x的频谱应该位于200Hz处,经过fftshift处理的蓝色频谱是正确的。

注意:红色和蓝色的曲线在两边分别关于-250Hz和250Hz对称,这并不是偶然。

问题十:怎么通过函数表达式画出该频谱图 频谱分析的基础拉普拉斯变换会不?

以上就是关于利用matlab怎样进行频谱分析全部的内容,包括:利用matlab怎样进行频谱分析、matlab 画频谱图、matlab怎样进行频谱分析等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9275997.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存