我正在尝试获得纯正弦函数的谱图。再加上我想展示整个信号的fft图。我期待峰值处于相同的频率,因为处理的是同一时间静止的信号。
码
samplingFrequency = 32.
frequency = 4 #frequency of the sinus wave
t = arange(0,20,1/samplingFrequency) #time intervals with period 1/sampling frequency
y = cos(2*pi*frequency*t)
Y = fft.fft(y) #standard fft on the whole signal
frequencyAxis = fft.fftfreq(len(Y),1/samplingFrequency ) #adjusting the x axis
#PLOTTING
fig, (ax1,ax2) = plt.subplots(nrows=2, ncols=1)
ax1.specgram(y, Fs = samplingFrequency)
ax2.stem(frequencyAxis,Y,linefmt='r--', markerfmt='ro')
积
整个信号的fft与预期的一样,峰值为4.但是,该图在12上绘制了一条线。关于错误在哪里的想法?
更新 使用以下版本:
答案 0 :(得分:2)
在带有numpy 1.7.1和matplotlib 1.2.1的Python 2.7.5上,您的代码完全按预期工作。尝试将numpy和matplotlib安装更新到最新版本。