scipy.signal.get_window#
- scipy.signal.get_window(window, Nx, fftbins=True)[source]#
Return a window of a given length and type.
- Parameters:
- windowstring, float, or tuple
The type of window to create. See below for more details.
- Nxint
The number of samples in the window.
- fftbinsbool, optional
If True (default), create a “periodic” window, ready to use with ifftshift and be multiplied by the result of an FFT (see also
fftfreq
). If False, create a “symmetric” window, for use in filter design.
- Returns:
- get_windowndarray
Returns a window of length Nx and type window
Notes
Window types:
kaiser
(needs beta)kaiser_bessel_derived
(needs beta)gaussian
(needs standard deviation)general_cosine
(needs weighting coefficients)general_gaussian
(needs power, width)general_hamming
(needs window coefficient)dpss
(needs normalized half-bandwidth)chebwin
(needs attenuation)
If the window requires no parameters, then window can be a string.
If the window requires parameters, then window must be a tuple with the first argument the string name of the window, and the next arguments the needed parameters.
If window is a floating point number, it is interpreted as the beta parameter of the
kaiser
window.Each of the window types listed above is also the name of a function that can be called directly to create a window of that type.
Examples
>>> from scipy import signal >>> signal.get_window('triang', 7) array([ 0.125, 0.375, 0.625, 0.875, 0.875, 0.625, 0.375]) >>> signal.get_window(('kaiser', 4.0), 9) array([ 0.08848053, 0.29425961, 0.56437221, 0.82160913, 0.97885093, 0.97885093, 0.82160913, 0.56437221, 0.29425961]) >>> signal.get_window(('exponential', None, 1.), 9) array([ 0.011109 , 0.03019738, 0.082085 , 0.22313016, 0.60653066, 0.60653066, 0.22313016, 0.082085 , 0.03019738]) >>> signal.get_window(4.0, 9) array([ 0.08848053, 0.29425961, 0.56437221, 0.82160913, 0.97885093, 0.97885093, 0.82160913, 0.56437221, 0.29425961])