matplotlib.axes.Axes.specgram #

Haches. specgram ( x , NFFT = Aucun , Fs = Aucun , Fc = Aucun , detrend = Aucun , window = Aucun , noverlap = Aucun , cmap = Aucun , xextent = Aucun , pad_to = Aucun , côtés = Aucun , scale_by_freq = Aucun , mode = Aucun ,échelle = Aucun , vmin = Aucun , vmax = Aucun , * , données = Aucun , ** kwargs ) [source] #

Tracez un spectrogramme.

Calculer et tracer un spectrogramme de données en x . Les données sont divisées en segments de longueur NFFT et le spectre de chaque section est calculé. La fonction de fenêtrage window est appliquée à chaque segment et la quantité de chevauchement de chaque segment est spécifiée avec noverlap . Le spectrogramme est tracé sous forme de palette de couleurs (en utilisant imshow).

Paramètres :
x Tableau ou séquence 1-D

Tableau ou séquence contenant les données.

Fs flottant, par défaut : 2

La fréquence d'échantillonnage (échantillons par unité de temps). Il est utilisé pour calculer les fréquences de Fourier, freqs , en cycles par unité de temps.

window callable ou ndarray, par défaut :window_hanning

Une fonction ou un vecteur de longueur NFFT . Pour créer des vecteurs de fenêtre, voir window_hanning, window_none, numpy.blackman, numpy.hamming, numpy.bartlett, scipy.signal, scipy.signal.get_window, etc. Si une fonction est passée en argument, elle doit prendre un segment de données en argument et renvoyer la version fenêtrée du segment.

côtés {'default', 'unilatéral', 'bilatéral'}, facultatif

Quels côtés du spectre revenir. 'default' est unilatéral pour les données réelles et bilatéral pour les données complexes. 'unilatéral' force le retour d'un spectre unilatéral, tandis que 'bilatéral' force bilatéral.

pad_to entier , facultatif

Le nombre de points auxquels le segment de données est complété lors de l'exécution de la FFT. Cela peut être différent de NFFT , qui spécifie le nombre de points de données utilisés. Sans augmenter la résolution réelle du spectre (la distance minimale entre les pics résolubles), cela peut donner plus de points dans le tracé, permettant plus de détails. Cela correspond au paramètre nfft dans l'appel à . La valeur par défaut est None, ce qui définit pad_to égal à NFFT

NFFT entier , par défaut : 256

Le nombre de points de données utilisés dans chaque bloc pour la FFT. Une puissance 2 est la plus efficace. Cela ne doit PAS être utilisé pour obtenir un remplissage à zéro, sinon la mise à l'échelle du résultat sera incorrecte ; utilisez pad_to pour cela à la place.

detrend {'none', 'mean', 'linear'} ou appelable, par défaut : 'none'

La fonction appliquée à chaque segment avant fft-ing, conçue pour supprimer la tendance moyenne ou linéaire. Contrairement à MATLAB, où le paramètre detrend est un vecteur, dans Matplotlib, il s'agit d'une fonction. Le mlab module définit detrend_none, detrend_meanet detrend_linear, mais vous pouvez également utiliser une fonction personnalisée. Vous pouvez également utiliser une chaîne pour choisir l'une des fonctions : 'none' calls detrend_none. appels "méchants" detrend_mean. appels "linéaires" detrend_linear.

scale_by_freq booléen , par défaut : Vrai

Indique si les valeurs de densité résultantes doivent être mises à l'échelle par la fréquence de mise à l'échelle, qui donne la densité en unités de 1/Hz. Cela permet une intégration sur les valeurs de fréquence renvoyées. La valeur par défaut est True pour la compatibilité MATLAB.

mode {'default', 'psd', 'magnitude', 'angle', 'phase'}

Quel type de spectre utiliser. La valeur par défaut est 'psd', qui prend la densité spectrale de puissance. 'magnitude' renvoie le spectre de magnitude. 'angle' renvoie le spectre de phase sans dépliage. 'phase' renvoie le spectre de phase avec déroulement.

noverlap int, par défaut : 128

Le nombre de points de chevauchement entre les blocs.

échelle {'défaut', 'linéaire', 'dB'}

La mise à l'échelle des valeurs dans la spécification . 'linéaire' n'est pas mis à l'échelle. 'dB' renvoie les valeurs en échelle de dB. Lorsque le mode est 'psd', il s'agit de la puissance dB (10 * log10). Sinon, c'est l'amplitude en dB (20 * log10). 'default' est 'dB' si le mode est 'psd' ou 'magnitude' et 'linear' sinon. Cela doit être 'linéaire' si le mode est 'angle' ou 'phase'.

Fc entier, par défaut : 0

La fréquence centrale de x , qui compense les étendues x du tracé pour refléter la plage de fréquences utilisée lorsqu'un signal est acquis, puis filtré et sous-échantillonné en bande de base.

cmap Colormap, par défaut : rcParams["image.cmap"](par défaut : 'viridis')
xextent Aucun ou (xmin, xmax)

L'étendue de l'image le long de l'axe des x. La valeur par défaut définit xmin sur le bord gauche du premier bin ( colonne du spectre ) et xmax sur le bord droit du dernier bin. Notez que pour noverlap>0 la largeur des cases est inférieure à celle des segments.

objet de données indexable, facultatif

S'ils sont fournis, les paramètres suivants acceptent également une chaîne s, qui est interprétée comme data[s](sauf si cela déclenche une exception) :

X

**kwargs

Des arguments de mots-clés supplémentaires sont transmis à imshow ce qui crée l'image du specgram. L'argument du mot clé d'origine n'est pas pris en charge.

Retours :
matrice de spectre 2D

Les colonnes sont les périodogrammes des segments successifs.

freqs tableau 1-D

Les fréquences correspondant aux rangées du spectre .

t Tableau 1-D

Les temps correspondant aux points médians des segments (c'est-à-dire les colonnes du spectre ).

je suisAxesImage

L'image créée par imshow contenant le spectrogramme.

Voir également

psd

Diffère dans le chevauchement par défaut ; à restituer la moyenne des périodogrammes de segments ; en ne revenant pas; et en générant un tracé linéaire au lieu d'une palette de couleurs.

magnitude_spectrum

Un seul spectre, similaire à un seul segment lorsque le mode est "magnitude". Trace une ligne au lieu d'une palette de couleurs.

angle_spectrum

Un seul spectre, similaire à un seul segment lorsque le mode est 'angle'. Trace une ligne au lieu d'une palette de couleurs.

phase_spectrum

Un seul spectre, similaire à un seul segment lorsque le mode est 'phase'. Trace une ligne au lieu d'une palette de couleurs.

Remarques

Les paramètres detrend et scale_by_freq ne s'appliquent que lorsque mode est défini sur 'psd'.

Exemples utilisant matplotlib.axes.Axes.specgram#

Démonstration du spectrogramme

Démonstration du spectrogramme

Démonstration du spectrogramme