使用FFT进行频谱分析
import numpy as np import matplotlib.pyplot as plt from scipy.fftpack import fft fs=100 #采样频率 N=128 #数据点数 n=np.arange(0,N) t=n/fs #时间序列 pi=3.14 x=0.5*np.sin(2*pi*15*t)+2*np.sin(2*pi*40*t) y=np.abs(fft(x)) #fft变换后的振幅 f=n*fs/N #频率序列 print(t.shape) plt.subplot(211) plt.plot(n,x) plt.subplot(212) plt.plot(n,y) plt.show()