matplotlib.pyplot.psd #
- matplotlib.pyplot. psd ( x , NFFT = None , Fs = None , Fc = None , detrend = None , window = None , noverlap = None , pad_to = None , pages = None , scale_by_freq = None , return_line = None , * , data = None , **kwargs ) [Quelle] #
Zeichnen Sie die spektrale Leistungsdichte.
Die spektrale Leistungsdichte\(P_{xx}\)nach Welchs durchschnittlicher Periodogramm-Methode. Der Vektor x wird in NFFT-Längensegmente unterteilt. Jedes Segment wird durch die Funktion detrend detrended und durch die Funktion window gefenstert . noverlap gibt die Länge der Überlappung zwischen Segmenten an. Das\(|\mathrm{fft}(i)|^2\) jedes Segments\(i\)werden zur Berechnung gemittelt\(P_{xx}\), mit einer Skalierung zur Korrektur des Leistungsverlusts aufgrund von Fensterung.
Wenn len( x ) < NFFT , wird es mit Nullen auf NFFT aufgefüllt .
- Parameter :
- x 1-D-Array oder Sequenz
Array oder Sequenz, die die Daten enthält
- Fs Float, Standard: 2
Die Abtastfrequenz (Abtastungen pro Zeiteinheit). Es wird verwendet, um die Fourier-Frequenzen, freqs , in Zyklen pro Zeiteinheit zu berechnen.
- window callable oder ndarray, default:
window_hanning
Eine Funktion oder ein Vektor der Länge NFFT . Um Fenstervektoren zu erstellen, siehe
window_hanning
,window_none
,numpy.blackman
,numpy.hamming
,numpy.bartlett
,scipy.signal
,scipy.signal.get_window
, usw. Wenn eine Funktion als Argument übergeben wird, muss sie ein Datensegment als Argument annehmen und die Fensterversion des Segments zurückgeben.- Seiten {'Standard', 'einseitig', 'zweiseitig'}, optional
Welche Seiten des Spektrums zurückkehren. 'default' ist einseitig für echte Daten und zweiseitig für komplexe Daten. „einseitig“ erzwingt die Rückkehr eines einseitigen Spektrums, während „zweiseitig“ zweiseitig erzwingt.
- pad_to int, optional
Die Anzahl der Punkte, bis zu denen das Datensegment aufgefüllt wird, wenn die FFT durchgeführt wird. Dies kann sich von NFFT unterscheiden , das die Anzahl der verwendeten Datenpunkte angibt. Während die tatsächliche Auflösung des Spektrums (der Mindestabstand zwischen auflösbaren Spitzen) nicht erhöht wird, kann dies mehr Punkte im Diagramm ergeben, was mehr Details ermöglicht. Dies entspricht dem Parameter n im Aufruf von
fft
. Der Standardwert ist None, wodurch pad_to gleich NFFT gesetzt wird- NFFT int, Standard: 256
Die Anzahl der Datenpunkte, die in jedem Block für die FFT verwendet werden. Eine Leistung 2 ist am effizientesten. Dies sollte NICHT verwendet werden, um eine Auffüllung mit Nullen zu erhalten, da sonst die Skalierung des Ergebnisses falsch ist; Verwenden Sie dafür stattdessen pad_to .
- detrend {'none', 'mean', 'linear'} oder Callable, default: 'none'
Die Funktion, die vor der Anpassung auf jedes Segment angewendet wird, um den Mittelwert oder den linearen Trend zu entfernen. Anders als in MATLAB, wo der Detrend- Parameter ein Vektor ist, ist es in Matplotlib eine Funktion. Das
mlab
Modul definiertdetrend_none
,detrend_mean
unddetrend_linear
, aber Sie können auch eine benutzerdefinierte Funktion verwenden. Sie können auch eine Zeichenfolge verwenden, um eine der Funktionen auszuwählen: 'none' ruft aufdetrend_none
. "Gemeine" Anrufedetrend_mean
. „lineare“ Aufrufedetrend_linear
.- scale_by_freq bool, Standard: True
Ob die resultierenden Dichtewerte mit der Skalierungsfrequenz skaliert werden sollen, die die Dichte in Einheiten von 1/Hz angibt. Dies ermöglicht eine Integration über die zurückgegebenen Frequenzwerte. Der Standardwert ist True für MATLAB-Kompatibilität.
- noverlap int, Standard: 0 (keine Überlappung)
Die Anzahl der Überlappungspunkte zwischen Segmenten.
- Fc int, Standard: 0
Die Mittenfrequenz von x , die die x-Ausdehnungen des Diagramms versetzt, um den verwendeten Frequenzbereich widerzuspiegeln, wenn ein Signal erfasst und dann gefiltert und auf das Basisband heruntergesampelt wird.
- return_line bool, Standard: False
Ob das gezeichnete Linienobjekt in die zurückgegebenen Werte eingeschlossen werden soll.
- Rückgaben :
- Pxx 1-D-Array
Die Werte für das Leistungsspektrum\(P_{xx}\)vor Skalierung (Realwert).
- Frequenzen 1-D-Array
Die den Elementen in Pxx entsprechenden Frequenzen .
- Linie
Line2D
Die von dieser Funktion erstellte Linie. Wird nur zurückgegeben, wenn return_line True ist.
- Andere Parameter :
- data indexierbares Objekt, optional
Falls angegeben, akzeptieren die folgenden Parameter auch einen String
s
, der interpretiert wird alsdata[s]
(es sei denn, dies löst eine Ausnahme aus):x
- **Kwarg
Schlüsselwortargumente steuern die
Line2D
Eigenschaften:Eigentum
Beschreibung
eine Filterfunktion, die ein (m, n, 3) Float-Array und einen dpi-Wert akzeptiert und ein (m, n, 3)-Array und zwei Offsets von der unteren linken Ecke des Bildes zurückgibt
Skalar oder Keine
bool
antialiased
oder ähbool
bool
Patch oder (Pfad, Transform) oder None
color
oder cFarbe
CapStyle
oder {'hinter', 'vorstehend', 'rund'}JoinStyle
oder {'Gehrung', 'rund', 'Fase'}Folge von Gleitkommazahlen (Ein/Aus Tinte in Punkten) oder (Keine, Keine)
(2, N)-Array oder zwei 1D-Arrays
drawstyle
oder DS{'default', 'steps', 'steps-pre', 'steps-mid', 'steps-post'}, default: 'default'
{'voll', 'links', 'rechts', 'unten', 'oben', 'keine'}
Farbe oder Keine
Str
bool
Objekt
linestyle
oder ls{'-', '--', '-.', ':', '', (offset, on-off-seq), ...}
linewidth
oder lwschweben
Marker-Style-String
Path
oderMarkerStyle
markeredgecolor
oder mecFarbe
markeredgewidth
oder miauschweben
markerfacecolor
oder mfcFarbe
markerfacecoloralt
oder mfcaltFarbe
markersize
oder msschweben
None oder int oder (int, int) oder slice oder list[int] oder float oder (float, float) oder list[bool]
bool
float or callable[[Artist, Event], tuple[bool, dict]]
Unbekannt
bool
(Maßstab: Float, Länge: Float, Zufälligkeit: Float)
bool oder Keine
CapStyle
oder {'hinter', 'vorstehend', 'rund'}JoinStyle
oder {'Gehrung', 'rund', 'Fase'}Unbekannt
Str
bool
1D-Array
1D-Array
schweben
Siehe auch
specgram
Unterscheidet sich in der Standardüberlappung; indem der Mittelwert der Segment-Periodogramme nicht zurückgegeben wird; beim Zurückgeben der Zeiten der Segmente; und beim Plotten einer Farbkarte anstelle einer Linie.
magnitude_spectrum
Stellt das Magnitudenspektrum dar.
csd
Zeichnet die spektrale Dichte zwischen zwei Signalen auf.
Anmerkungen
Zum Plotten wird die Leistung als dargestellt \(10\log_{10}(P_{xx})\)für Dezibel, obwohl Pxx selbst zurückgegeben wird.
Verweise
Bendat & Piersol - Zufallsdaten: Analyse- und Messverfahren, John Wiley & Sons (1986)