get_window#
- scipy.signal.windows.get_window(window, Nx, fftbins=True, *, xp=None, device=None)[Quelle]#
Gibt ein Fenster einer gegebenen Länge und eines gegebenen Typs zurück.
- Parameter:
- windowstring, float oder tuple
Die Art des zu erstellenden Fensters. Weitere Details finden Sie unten.
- Nxint
Die Anzahl der Samples im Fenster.
- fftbinsbool, optional
Wenn True (Standard), wird ein "periodisches" Fenster erstellt, das zur Verwendung mit ifftshift und zur Multiplikation mit dem Ergebnis einer FFT bereit ist (siehe auch
fftfreq). Wenn False, wird ein "symmetrisches" Fenster für das Filterdesign erstellt.- xparray_namespace, optional
Optionaler Array-Namespace. Sollte mit dem Array-API-Standard kompatibel sein oder von array-api-compat unterstützt werden. Standard:
numpy- device: any
optionale Gerätespezifikation für die Ausgabe. Sollte mit einer der unterstützten Gerätespezifikationen in
xpübereinstimmen.
- Rückgabe:
- get_windowndarray
Gibt ein Fenster der Länge Nx und des Typs window zurück
Hinweise
Fenstertypen
kaiser(benötigt beta)kaiser_bessel_derived(benötigt beta)gaussian(benötigt Standardabweichung)general_cosine(benötigt Gewichtungskoeffizienten)general_gaussian(benötigt Potenz, Breite)general_hamming(benötigt Fensterkoeffizient)dpss(benötigt normalisierte Bandbreite)chebwin(benötigt Dämpfung)
Wenn das Fenster keine Parameter benötigt, kann window ein String sein.
Wenn das Fenster Parameter benötigt, muss window ein Tupel sein, wobei das erste Argument der String-Name des Fensters und die nächsten Argumente die benötigten Parameter sind.
Wenn window eine Fließkommazahl ist, wird sie als Beta-Parameter des
kaiser-Fensters interpretiert.Jeder der oben aufgeführten Fenstertypen ist auch der Name einer Funktion, die direkt aufgerufen werden kann, um ein Fenster dieses Typs zu erstellen.
Beispiele
>>> 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])