我一直在学习有关fft的教程,虽然我有代码verbatum,但我机器上的情节看起来不应该如何。我记录数据以确保我有超过5292个样本的近似正弦波。然而,当我使用show()
运行绘图时,我得到以下图像:(顺便说一句,是否有降价attr使这些图像更小?)
同样,这是从后续代码中生成的:
from pylab import *
from scipy.io import wavfile
sampFreq, snd = wavfile.read('440_sine.wav')
snd = snd / (2.**15)
s1 = snd[:,0]
timeArray = arange(0, 5292, 1)
timeArray = timeArray / sampFreq
timeArray = timeArray * 1000 #scale to milliseconds
plot(timeArray, s1, color='k')
ylabel('Amplitude')
xlabel('Time (ms)')
for i in s1:
print i
show()
简而言之,我正在学习fft,而且我是python / matplotlib的新手,所以任何帮助都会提前得到很高的评价。
答案 0 :(得分:0)
sampFreq
的价值是多少?你的timeArray
是一个整数列表,我假设sampFreq也返回一个整数。如果sampFreq
大于timeArray
中的值,则所有结果值将为0,因为整数除法。
在浏览sampFreq
列表之前,您可能希望先将timeArray
转换为浮点数,然后查看是否有帮助。
作为问题的一个例子,在python shell中尝试:
>>> 3/4
和
>>> 3/4.0