matlab 傅里叶变换我想要对一组我测的数据进行傅里叶变换,已知测量的各个时间t以及对应时间的数据值x.比0 -0.90361810.4166667 -0.90361810.8333333 -0.90361811.25 -1.136811.666667 -1.136812.083333 -0.90361812.5 -0.67
来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/24 12:31:49
matlab 傅里叶变换我想要对一组我测的数据进行傅里叶变换,已知测量的各个时间t以及对应时间的数据值x.比0 -0.90361810.4166667 -0.90361810.8333333 -0.90361811.25 -1.136811.666667 -1.136812.083333 -0.90361812.5 -0.67
matlab 傅里叶变换我想要对一组我测的数据进行傅里叶变换,已知测量的各个时间t以及对应时间的数据值x.比
0 -0.9036181
0.4166667 -0.9036181
0.8333333 -0.9036181
1.25 -1.13681
1.666667 -1.13681
2.083333 -0.9036181
2.5 -0.6704264
2.916667 -0.4372346
3.333333 -0.2040428
3.75 -0.2040428
4.166667 -0.2040428
4.583333 -0.2040428
5 -0.2040428
5.416667 -0.2040428
5.833333 0.02914897
6.25 -0.2040428
6.666667 0.02914897
7.083333 0.4955325
7.5 0.7287243
7.916667 0.7287243
8.333333 0.7287243
8.75 0.2623408
9.166667 0.02914897
9.583333 -0.2040428
10 0.2623408
10.41667 0.7287243
10.83333 0.7287243
11.25 0.7287243
11.66667 0.7287243
12.08333 0.4955325
12.5 0.02914897
12.91667 0.02914897
13.33333 0.02914897
13.75 0.02914897
14.16667 -0.2040428
14.58333 -0.2040428
15 -0.4372346
15.41667 -0.4372346
15.83333 -0.4372346
16.25 0.02914897
16.66667 -0.6704264
17.08333 -0.6704264
17.5 -1.13681
17.91667 -1.13681
18.33333 -1.13681
18.75 -0.6704264
19.16667 -0.4372346
19.58333 -0.2040428
20 -0.6704264
第一列是横坐标时间,第二列是纵坐标数值,如何傅里叶变换?时间和数值没有函数关系
matlab 傅里叶变换我想要对一组我测的数据进行傅里叶变换,已知测量的各个时间t以及对应时间的数据值x.比0 -0.90361810.4166667 -0.90361810.8333333 -0.90361811.25 -1.136811.666667 -1.136812.083333 -0.90361812.5 -0.67
我把你的数据保存到data.txt,放到matlab工作目录里,然后打下面命令,或者保存成m文件
a=load('data.txt');%读数据
t=a(:,1)';%时间
x=a(:,2)';%数据
dt=t(2)-t(1);%用diff(t)看了下,你的采样时间间隔一样,就只算了一个差值
fs=1/dt;%傅里叶变换后的坐标轴的最大值就是采样频率fs,与dt是倒数关系
ax=abs(fft(x));%fft是matlab中傅里叶变换的命令,abs是求模,我画的是幅值谱
f=(0:length(t)-1)*fs/length(t);%频谱图横轴,总共49个点,最大值是fs,每个点就是fs/49
figure();%画在一起了
subplot(211);plot(t,x);%上:时域图
subplot(212);plot(f(1:25),ax(1:25));%下:频谱图
%因为频谱图是对称的,所以画一半就可以了.纵轴是幅值,横轴是频率