一个简单的傅里叶变换matlab函数(绝对可用)

a = xlsread('123.xlsx');  % 读入excel数据
t=0:1:3357;% 采样步长 3358个数据(在读入文件这两点一定要设置好)
N=length(t); %样点个数
x=a(:,2)';%数据
dt=1/64000;%用diff(t)看了下,你的采样时间间隔一样,就只算了一个差值
fs=1/dt;%傅里叶变换后的坐标轴的最大值就是采样频率fs,与dt是倒数关系
ax=abs(fft(x));%fft是matlab中傅里叶变换的命令,abs是求模,我画的是幅值谱
f=(0:length(t)-1)*fs/length(t);%频谱图横轴
figure();%画在一起了
subplot(211);plot(t,x);%上:时域图

subplot(212);plot(f(1:N/2),ax(1:N/2));%下

同时设置好所放数据的路径,把123.xlsx文件保存在该路径下。123.xlsx文件已经上传。

一个简单的傅里叶变换matlab函数(绝对可用)_第1张图片

一个简单的傅里叶变换matlab函数(绝对可用)_第2张图片




你可能感兴趣的:(matlab)