gpt4 book ai didi

python - 使用 matplotlib 绘制纯窦的频谱图

转载 作者:行者123 更新时间:2023-12-01 05:44:18 24 4
gpt4 key购买 nike

我正在尝试获取纯正弦函数的频谱图。除此之外,我想展示整个信号的快速傅立叶变换图。我期望峰值处于相同的频率,因为我们处理的是时间上静止的相同信号。

代码

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')

情节 enter image description here

整个信号的 fft 与预期一致,峰值位于 4。但是频谱图在 12 上绘制了一条线。关于误差在哪里的想法?

更新使用以下版本:

  • matplotlib'1.1.1'
  • numpy'1.6.2'
  • python 2.7.3

最佳答案

在带有 numpy 1.7.1 和 matplotlib 1.2.1 的 Python 2.7.5 上,您的代码完全按照预期工作。尝试将您安装的 numpy 和 matplotlib 更新到最新版本。

关于python - 使用 matplotlib 绘制纯窦的频谱图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16633612/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com