scipy.fft.

fftfreq#

scipy.fft.fftfreq(n, d=1.0, *, xp=None, device=None)[source]#

傳回離散傅立葉轉換的取樣頻率。

傳回的浮點數陣列 f 包含頻率 bin 中心,單位為取樣間隔的週期數(從零開始)。例如,如果取樣間隔以秒為單位,則頻率單位為週期/秒。

給定視窗長度 n 和取樣間隔 d

f = [0, 1, ...,   n/2-1,     -n/2, ..., -1] / (d*n)   if n is even
f = [0, 1, ..., (n-1)/2, -(n-1)/2, ..., -1] / (d*n)   if n is odd
參數:
nint

視窗長度。

d純量,選用

取樣間隔(取樣率的倒數)。預設值為 1。

xparray_namespace,選用

傳回陣列的命名空間。預設值為 None,表示使用 NumPy。

devicedevice,選用

傳回陣列的裝置。僅當 xp.fft.fftfreq 實作裝置參數時有效。

傳回值:
fndarray

長度為 n 的陣列,包含取樣頻率。

範例

>>> import numpy as np
>>> import scipy.fft
>>> signal = np.array([-2, 8, 6, 4, 1, 0, 3, 5], dtype=float)
>>> fourier = scipy.fft.fft(signal)
>>> n = signal.size
>>> timestep = 0.1
>>> freq = scipy.fft.fftfreq(n, d=timestep)
>>> freq
array([ 0.  ,  1.25,  2.5 , ..., -3.75, -2.5 , -1.25])