scipy.fftpack.
fftshift#
- scipy.fftpack.fftshift(x, оси=None)#
Сдвинуть компонент нулевой частоты в центр спектра.
Эта функция меняет полупространства для всех указанных осей (по умолчанию для всех). Обратите внимание, что
y[0]является компонентом Найквиста только еслиlen(x)является чётным.- Параметры:
- xarray_like
Входной массив.
- осицелое число или кортеж формы, опционально
Оси, по которым выполняется сдвиг. По умолчанию None, что означает сдвиг по всем осям.
- Возвращает:
- yndarray
Сдвинутый массив.
Примеры
>>> import numpy as np >>> freqs = np.fft.fftfreq(10, 0.1) >>> freqs array([ 0., 1., 2., ..., -3., -2., -1.]) >>> np.fft.fftshift(freqs) array([-5., -4., -3., -2., -1., 0., 1., 2., 3., 4.])
Сдвинуть нулевую частотную компоненту только по второй оси:
>>> freqs = np.fft.fftfreq(9, d=1./9).reshape(3, 3) >>> freqs array([[ 0., 1., 2.], [ 3., 4., -4.], [-3., -2., -1.]]) >>> np.fft.fftshift(freqs, axes=(1,)) array([[ 2., 0., 1.], [-4., 3., 4.], [-1., -3., -2.]])