我看了一个关于傅里叶变换的视频,在函数cos(2x)
的傅里叶变换图中,hike应该在ω=-2
和ω=2
处,但为什么我的不同:
这是代码:
import numpy as np
import matplotlib.pyplot as plt
import scipy.fftpack
# Number of samplepoints
N = 600
t = np.arange(0.0, 20.0, 0.1)
# sample spacing
T = -1.0 / 1.0
x = np.linspace(0.0, N*T, N)
yt = np.cos(2.0*t)
y = np.cos(2.0*x)
yf = scipy.fftpack.fft(y)
xf = np.linspace(0.0, 1.0/(2.0*T), N//2)
fig, ax = plt.subplots(figsize=(14, 7))
ax1 = fig.add_subplot(121)
ax2 = fig.add_subplot(122)
ax1.plot(xf, 2.0/N * np.abs(yf[:N//2]))
ax1.set_title("$FT\{f(x)\}$")
ax2.plot(t,yt)
ax2.set_title("$f(x) = cos(2x)$")
ax2.set_xticks([0, np.pi, 2 * np.pi])
plt.show()
1条答案
按热度按时间jslywgbw1#
角频率
ω
可以定义为ω = 2πf
。你是用频率来作图的,而不是角频率。要在预期的位置获得峰值,只需将绘图说明更改为: