#### Previous topic

scipy.fftpack.shift

#### Next topic

scipy.fftpack.ifftshift

# scipy.fftpack.fftshift

`scipy.fftpack.``fftshift`(x, axes=None)

  Shift the zero-frequency component to the center of the spectrum.

  This function swaps half-spaces for all axes listed (defaults to all). Note that `y[0]` is the Nyquist component only if `len(x)` is even.

  Parameters:

  x : array_like

  > Input array.

  axes : int or shape tuple, optional

  > Axes over which to shift. Default is None, which shifts all axes.

  Returns:

  y : ndarray

  > The shifted array.

  See also

  `ifftshift`
    The inverse of `fftshift`.

  Examples

      >>> freqs = np.fft.fftfreq(10, 0.1)
      >>> freqs
      array([ 0.,  1.,  2.,  3.,  4., -5., -4., -3., -2., -1.])
      >>> np.fft.fftshift(freqs)
      array([-5., -4., -3., -2., -1.,  0.,  1.,  2.,  3.,  4.])

  Shift the zero-frequency component only along the second axis:

      >>> 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.]])