如何对输入信号画时域图

clc;
clear;
data=load('D:\桌面\中期\paper\整理\000数据库\zjy.mat');
Au=data.zjy(:,6);
Au=Au(5384:7384,1);
Au=Au-mean(Au);
Fs = 200;%采样频率

N = length(Au);%求取抽样点数
t = (0:N-1)/Fs;%显示实际时间
% t = 0:1/Fs:(N-1)/Fs;  %生成信号时间

plot(t,Au);
axis([0 10,-1.5,1.5]);
xlabel('时间t/s');
set(gca,'Fontsize',14)%设置字体大小为14
ylabel('Amplitude');

关于如何把一个数据导入进来画出来相应的时域图,对于初入门的学者来说还是比较简单。最后给大家展示一下这个代码最后的呈现效果。

下面我简单讲解一下这个代码,也是一个比较简单的画时域代码

data=load('D:\桌面\中期\paper\整理\000数据库\zjy.mat');
Au=data.zjy(:,6);
Au=Au(5384:7384,1);

这个里面是把自己的数据导入进来,但是由于导入的.mat文件里面还有一层,所以需要第二行,也就是data.zjy(:,6),这个意思是data这个盒子打开,发现里面还有个盒子叫zjy,要打开zjy,必须通过一个格式,就是data.zjy,注意,后面的括号里面第一个是行,第二个是列。

(:,6)的意思是所有行,第6列。

我们继续往后看

Au=Au-mean(Au);

这是啥意思?其实和我放入的数据有关,我放一下原来的数据:

 发现没有?这里的数据居然不是以0线为基本波动,我们平时处理还是建议在0上下浮动。

这里就是减去它的平均值,做了一个转换。转换之后的效果:

 很明显看出来,调整好了,在0上下波动。这也是比较简单的处理方法。

Fs = 200;%采样频率
N = length(Au);%求取抽样点数
t = (0:N-1)/Fs;%显示实际时间
% t = 0:1/Fs:(N-1)/Fs;  %生成信号时间

这又是啥情况?

因为我们导入数据,是没有时间的,要做时域图的x轴坐标是时间,我们只能通过设置采样频率来求时间

Fs是采样频率,也就是每秒钟采样的点数,N是数据的中共点数,t是不是一下子好求了?

这里我们的t还有一个表示

t = (1:N)/Fs;%显示实际时间

t点和Au点要对应,Au有2001个点,每个点出现对应一个时间,那么这个时间点也有2001个

最后的就不过多解释了,就是把图像呈现出来

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,下面是相应的 Matlab 代码实现: ```matlab % 读入音频文件,获取采样率 Fs 和音频数据 y [y, Fs] = audioread('audio.wav'); % 计算音频信号的长度和时间向量 len = length(y); t = (0:len-1) / Fs; % 出音频信号时域波形 figure; plot(t, y); title('原始音频的时域波形'); xlabel('时间 (s)'); ylabel('振幅'); % 计算音频信号的频谱 Y = fft(y); f = Fs*(0:(len/2))/len; P = abs(Y/len); P1 = P(1:len/2+1); % 出音频信号的频谱 figure; plot(f, P1); title('原始音频的频谱'); xlabel('频率 (Hz)'); ylabel('振幅'); % 设计低通滤波器 Fc = 2000; % 截止频率 Wn = Fc/(Fs/2); [b, a] = butter(6, Wn, 'low'); % 应用低通滤波器并得到滤波后的音频信号 y_filtered = filter(b, a, y); % 出滤波后音频信号时域波形 figure; plot(t, y_filtered); title('滤波后音频的时域波形'); xlabel('时间 (s)'); ylabel('振幅'); % 计算滤波后音频信号的频谱 Y_filtered = fft(y_filtered); P_filtered = abs(Y_filtered/len); P1_filtered = P_filtered(1:len/2+1); % 出滤波后音频信号的频谱 figure; plot(f, P1_filtered); title('滤波后音频的频谱'); xlabel('频率 (Hz)'); ylabel('振幅'); ``` 这段代码首先读入音频文件,然后使用 `plot` 函数出原始音频的时域波形,使用 `fft` 函数计算其频谱,并使用 `plot` 函数出原始音频的频谱。接着,定义了一个低通滤波器,并使用 `filter` 函数将其应用到输入音频上,得到滤波后的音频信号。最后,再次使用 `plot` 函数出滤波后音频信号时域波形和频谱。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值