matplotlib.mlab#

Funciones numéricas de Python escritas para compatibilidad con comandos de MATLAB con los mismos nombres. La mayoría de las funciones numéricas de Python se pueden encontrar en las bibliotecas NumPy y SciPy . Lo que queda aquí es código para realizar cálculos espectrales y estimaciones de densidad del núcleo.

Funciones espectrales #

cohere

Coherencia (densidad espectral cruzada normalizada)

csd

Densidad espectral cruzada usando el periodograma promedio de Welch

detrend

Eliminar la línea media o de mejor ajuste de una matriz

psd

Densidad espectral de potencia usando el periodograma promedio de Welch

specgram

Espectrograma (espectro sobre segmentos de tiempo)

complex_spectrum

Devuelve el espectro de frecuencia de valor complejo de una señal

magnitude_spectrum

Devolver la magnitud del espectro de frecuencia de una señal

angle_spectrum

Devuelve el ángulo (fase envuelta) del espectro de frecuencia de una señal

phase_spectrum

Devuelve la fase (ángulo no envuelto) del espectro de frecuencia de una señal

detrend_mean

Eliminar la media de una línea.

detrend_linear

Eliminar la línea de mejor ajuste de una línea.

detrend_none

Devolver la línea original.

stride_windows

Obtenga todas las ventanas en una matriz de una manera eficiente en memoria

clase matplotlib.mlab. GaussianKDE ( conjunto de datos , bw_method = Ninguno ) [fuente] #

Bases:object

Representación de una estimación de densidad de kernel utilizando kernels gaussianos.

Parámetros :
conjunto de datos similar a una matriz

Puntos de datos a partir de los cuales estimar. En el caso de datos univariados, se trata de una matriz 1-D; de lo contrario, una matriz 2D con forma (n.º de dimensiones, n.º de datos).

bw_method str, escalar o invocable, opcional

El método utilizado para calcular el ancho de banda del estimador. Puede ser 'scott', 'silverman', una constante escalar o un invocable. Si es un escalar, se usará directamente como kde.factor. Si es invocable, debe tomar una GaussianKDEinstancia como único parámetro y devolver un escalar. Si Ninguno (predeterminado), se utiliza 'scott'.

Atributos :
conjunto de datos ndarray

El conjunto de datos pasado al constructor.

tenue int

Número de dimensiones.

num_dp int

Número de puntos de datos.

factor flotante

El factor de ancho de banda, obtenido de kde.covariance_factor, con el que se multiplica la matriz de covarianza.

ndarray de covarianza

La matriz de covarianza del conjunto de datos , escalada por el ancho de banda calculado ( kde.factor).

inv_cov ndarray

El inverso de la covarianza .

Métodos

kde.evaluate(puntos)

(ndarray) Evalúe el pdf estimado en un conjunto de puntos proporcionado.

kde(puntos)

(ndarray) Igual que kde.evaluate(puntos)

factor_covarianza ( ) [fuente] #
evaluar ( puntos ) [fuente] #

Evalúe el pdf estimado en un conjunto de puntos.

Parámetros :
puntos (# de dimensiones, # de puntos)-matriz

Alternativamente, se puede pasar un vector (# de dimensiones) y tratarlo como un solo punto.

Devoluciones :
(# de puntos,)-matriz

Los valores en cada punto.

aumenta :
ValueError si la dimensionalidad de los puntos de entrada es diferente

que la dimensionalidad del KDE.

scotts_factor ( ) [fuente] #
silverman_factor ( ) [fuente] #
matplotlib.mlab. angle_spectrum ( x , Fs = Ninguno , ventana = Ninguno , pad_to = Ninguno , lados = Ninguno ) #

Calcule el ángulo del espectro de frecuencia (espectro de fase envuelto) de x . Los datos se rellenan hasta una longitud de pad_to y la ventana de función de ventana se aplica a la señal.

Parámetros :
matriz o secuencia x 1-D

Matriz o secuencia que contiene los datos

Fs flotante, por defecto: 2

La frecuencia de muestreo (muestras por unidad de tiempo). Se utiliza para calcular las frecuencias de Fourier, freqs , en ciclos por unidad de tiempo.

ventana invocable o ndarray, por defecto:window_hanning

Una función o un vector de longitud NFFT . Para crear vectores de ventana, consulte window_hanning, window_none, numpy.blackman, numpy.hamming, numpy.bartlett, scipy.signal, scipy.signal.get_window, etc. Si se pasa una función como argumento, debe tomar un segmento de datos como argumento y devolver la versión de ventana del segmento.

lados {'predeterminado', 'de un solo lado', 'de dos lados'}, opcional

A qué lados del espectro volver. 'predeterminado' es unilateral para datos reales y bilateral para datos complejos. 'oneside' fuerza el regreso de un espectro de un solo lado, mientras que 'twosided' fuerza dos lados.

pad_to int, opcional

El número de puntos a los que se rellena el segmento de datos al realizar la FFT. Si bien no aumenta la resolución real del espectro (la distancia mínima entre los picos resolubles), esto puede brindar más puntos en el gráfico, lo que permite obtener más detalles. Esto corresponde al parámetro nfft en la llamada a . El valor predeterminado es Ninguno, lo que establece pad_to igual a la longitud de la señal de entrada (es decir, sin relleno).

Devoluciones :
matriz de espectro 1-D

El ángulo del espectro de frecuencia (espectro de fase envuelto).

matriz 1-D de frecuencias

Las frecuencias correspondientes a los elementos del espectro .

Ver también

psd

Devuelve la densidad espectral de potencia.

complex_spectrum

Devuelve el espectro de frecuencia de valor complejo.

magnitude_spectrum

Devuelve el valor absoluto de complex_spectrum.

angle_spectrum

Devuelve el ángulo del complex_spectrum.

phase_spectrum

Devuelve la fase (ángulo no ajustado) del complex_spectrum.

specgram

Puede devolver el espectro complejo de segmentos dentro de la señal.

matplotlib.mlab. cohere ( x , y , NFFT=256 , Fs=2 , detrend=<function detrend_none> , window=<function window_hanning> , noverlap=0 , pad_to=None , Sides ='default' , scale_by_freq=None ) [fuente] #

La coherencia entre x e y . La coherencia es la densidad espectral cruzada normalizada:

\[C_{xy} = \frac{|P_{xy}|^2}{P_{xx}P_{yy}}\]
Parámetros :
x, y

Matriz o secuencia que contiene los datos

Fs flotante, por defecto: 2

La frecuencia de muestreo (muestras por unidad de tiempo). Se utiliza para calcular las frecuencias de Fourier, freqs , en ciclos por unidad de tiempo.

ventana invocable o ndarray, por defecto:window_hanning

Una función o un vector de longitud NFFT . Para crear vectores de ventana, consulte window_hanning, window_none, numpy.blackman, numpy.hamming, numpy.bartlett, scipy.signal, scipy.signal.get_window, etc. Si se pasa una función como argumento, debe tomar un segmento de datos como argumento y devolver la versión de ventana del segmento.

lados {'predeterminado', 'de un solo lado', 'de dos lados'}, opcional

A qué lados del espectro volver. 'predeterminado' es unilateral para datos reales y bilateral para datos complejos. 'oneside' fuerza el regreso de un espectro de un solo lado, mientras que 'twosided' fuerza dos lados.

pad_to int, opcional

El número de puntos a los que se rellena el segmento de datos al realizar la FFT. Esto puede ser diferente de NFFT , que especifica la cantidad de puntos de datos utilizados. Si bien no aumenta la resolución real del espectro (la distancia mínima entre los picos resolubles), esto puede brindar más puntos en el gráfico, lo que permite obtener más detalles. Esto corresponde al parámetro nfft en la llamada a . El valor predeterminado es Ninguno, lo que establece pad_to igual a NFFT

NFFT int, predeterminado: 256

El número de puntos de datos utilizados en cada bloque para la FFT. Una potencia 2 es más eficiente. Esto NO debe usarse para obtener relleno cero, o la escala del resultado será incorrecta; use pad_to para esto en su lugar.

detrend {'ninguno', 'media', 'lineal'} o invocable, predeterminado: 'ninguno'

La función aplicada a cada segmento antes de fft-ing, diseñada para eliminar la tendencia media o lineal. A diferencia de MATLAB, donde el parámetro de tendencia es un vector, en Matplotlib es una función. El mlab módulo define detrend_none, detrend_meany detrend_linear, pero también puede usar una función personalizada. También puede usar una cadena para elegir una de las funciones: llamadas 'ninguna' detrend_none. llamadas 'malas' detrend_mean. llamadas 'lineales' detrend_linear.

scale_by_freq bool, por defecto: Verdadero

Si los valores de densidad resultantes deben escalarse según la frecuencia de escalado, que da la densidad en unidades de 1/Hz. Esto permite la integración sobre los valores de frecuencia devueltos. El valor predeterminado es True para la compatibilidad con MATLAB.

noverlap int, predeterminado: 0 (sin superposición)

El número de puntos de superposición entre segmentos.

Devoluciones :
matriz Cxy 1-D

El vector de coherencia.

matriz 1-D de frecuencias

Las frecuencias de los elementos en Cxy .

Ver también

psd(),csd()

Para obtener información sobre los métodos utilizados para calcular\(P_{xy}\),\(P_{xx}\)y\(P_{yy}\).

matplotlib.mlab. complex_spectrum ( x , Fs = Ninguno , ventana = Ninguno , pad_to = Ninguno , lados = Ninguno ) #

Calcule el espectro de frecuencia de valor complejo de x . Los datos se rellenan hasta una longitud de pad_to y la ventana de función de ventana se aplica a la señal.

Parámetros :
matriz o secuencia x 1-D

Matriz o secuencia que contiene los datos

Fs flotante, por defecto: 2

La frecuencia de muestreo (muestras por unidad de tiempo). Se utiliza para calcular las frecuencias de Fourier, freqs , en ciclos por unidad de tiempo.

ventana invocable o ndarray, por defecto:window_hanning

Una función o un vector de longitud NFFT . Para crear vectores de ventana, consulte window_hanning, window_none, numpy.blackman, numpy.hamming, numpy.bartlett, scipy.signal, scipy.signal.get_window, etc. Si se pasa una función como argumento, debe tomar un segmento de datos como argumento y devolver la versión de ventana del segmento.

lados {'predeterminado', 'de un solo lado', 'de dos lados'}, opcional

A qué lados del espectro volver. 'predeterminado' es unilateral para datos reales y bilateral para datos complejos. 'oneside' fuerza el regreso de un espectro de un solo lado, mientras que 'twosided' fuerza dos lados.

pad_to int, opcional

El número de puntos a los que se rellena el segmento de datos al realizar la FFT. Si bien no aumenta la resolución real del espectro (la distancia mínima entre los picos resolubles), esto puede brindar más puntos en el gráfico, lo que permite obtener más detalles. Esto corresponde al parámetro nfft en la llamada a . El valor predeterminado es Ninguno, lo que establece pad_to igual a la longitud de la señal de entrada (es decir, sin relleno).

Devoluciones :
matriz de espectro 1-D

El espectro de frecuencia de valor complejo.

matriz 1-D de frecuencias

Las frecuencias correspondientes a los elementos del espectro .

Ver también

psd

Devuelve la densidad espectral de potencia.

complex_spectrum

Devuelve el espectro de frecuencia de valor complejo.

magnitude_spectrum

Devuelve el valor absoluto de complex_spectrum.

angle_spectrum

Devuelve el ángulo del complex_spectrum.

phase_spectrum

Devuelve la fase (ángulo no ajustado) del complex_spectrum.

specgram

Puede devolver el espectro complejo de segmentos dentro de la señal.

matplotlib.mlab. csd ( x , y , NFFT = Ninguno , Fs = Ninguno , detrend = Ninguno , ventana = Ninguno , noverlap = Ninguno , pad_to = Ninguno , lados = Ninguno , scale_by_freq = Ninguno ) [fuente] #

Calcule la densidad espectral cruzada.

La densidad espectral cruzada\(P_{xy}\)por el método del periodograma medio de Welch. Los vectores x e y se dividen en segmentos de longitud NFFT . A cada segmento se le elimina la tendencia mediante la función de tendencia y se le asigna una ventana mediante la ventana de la función . noverlap da la longitud de la superposición entre segmentos. El producto de las FFT directas de x e y se promedian sobre cada segmento para calcular\(P_{xy}\), con una escala para corregir la pérdida de energía debido a la ventana.

Si len( x ) < NFFT o len( y ) < NFFT , se rellenarán con ceros hasta NFFT .

Parámetros :
x, y matrices o secuencias 1-D

Matrices o secuencias que contienen los datos.

Fs flotante, por defecto: 2

La frecuencia de muestreo (muestras por unidad de tiempo). Se utiliza para calcular las frecuencias de Fourier, freqs , en ciclos por unidad de tiempo.

ventana invocable o ndarray, por defecto:window_hanning

Una función o un vector de longitud NFFT . Para crear vectores de ventana, consulte window_hanning, window_none, numpy.blackman, numpy.hamming, numpy.bartlett, scipy.signal, scipy.signal.get_window, etc. Si se pasa una función como argumento, debe tomar un segmento de datos como argumento y devolver la versión de ventana del segmento.

lados {'predeterminado', 'de un solo lado', 'de dos lados'}, opcional

A qué lados del espectro volver. 'predeterminado' es unilateral para datos reales y bilateral para datos complejos. 'oneside' fuerza el regreso de un espectro de un solo lado, mientras que 'twosided' fuerza dos lados.

pad_to int, opcional

El número de puntos a los que se rellena el segmento de datos al realizar la FFT. Esto puede ser diferente de NFFT , que especifica la cantidad de puntos de datos utilizados. Si bien no aumenta la resolución real del espectro (la distancia mínima entre los picos resolubles), esto puede brindar más puntos en el gráfico, lo que permite obtener más detalles. Esto corresponde al parámetro nfft en la llamada a . El valor predeterminado es Ninguno, lo que establece pad_to igual a NFFT

NFFT int, predeterminado: 256

El número de puntos de datos utilizados en cada bloque para la FFT. Una potencia 2 es más eficiente. Esto NO debe usarse para obtener relleno cero, o la escala del resultado será incorrecta; use pad_to para esto en su lugar.

detrend {'ninguno', 'media', 'lineal'} o invocable, predeterminado: 'ninguno'

La función aplicada a cada segmento antes de fft-ing, diseñada para eliminar la tendencia media o lineal. A diferencia de MATLAB, donde el parámetro de tendencia es un vector, en Matplotlib es una función. El mlab módulo define detrend_none, detrend_meany detrend_linear, pero también puede usar una función personalizada. También puede usar una cadena para elegir una de las funciones: llamadas 'ninguna' detrend_none. llamadas 'malas' detrend_mean. llamadas 'lineales' detrend_linear.

scale_by_freq bool, por defecto: Verdadero

Si los valores de densidad resultantes deben escalarse según la frecuencia de escalado, que da la densidad en unidades de 1/Hz. Esto permite la integración sobre los valores de frecuencia devueltos. El valor predeterminado es True para la compatibilidad con MATLAB.

noverlap int, predeterminado: 0 (sin superposición)

El número de puntos de superposición entre segmentos.

Devoluciones :
matriz Pxy 1-D

Los valores para el espectro cruzado\(P_{xy}\)antes de escalar (valor real)

matriz 1-D de frecuencias

Las frecuencias correspondientes a los elementos en Pxy

Ver también

psd

equivalente al ajuste .y = x

Referencias

Bendat & Piersol -- Datos aleatorios: análisis y procedimientos de medición, John Wiley & Sons (1986)

matplotlib.mlab. detrend ( x , clave = Ninguno , eje = Ninguno ) [fuente] #

Devuelve x con su tendencia eliminada.

Parámetros :
matriz o secuencia x

Matriz o secuencia que contiene los datos.

tecla {'predeterminada', 'constante', 'media', 'lineal', 'ninguna'} o función

El algoritmo de eliminación de tendencia a utilizar. 'predeterminado', 'media' y 'constante' son lo mismo que detrend_mean. 'lineal' es lo mismo que detrend_linear. 'ninguno' es lo mismo que detrend_none. El valor predeterminado es 'media'. Consulte las funciones correspondientes para obtener más detalles sobre los algoritmos. También puede ser una función que lleva a cabo la operación de tendencia.

eje int

El eje a lo largo del cual hacer la eliminación de tendencia.

Ver también

detrend_mean

Implementación del algoritmo 'media'.

detrend_linear

Implementación del algoritmo 'lineal'.

detrend_none

Implementación del algoritmo 'ninguno'.

matplotlib.mlab. detrend_linear ( y ) [fuente] #

Devuelve x menos la línea de mejor ajuste; eliminación de tendencia 'lineal'.

Parámetros :
y Secuencia o matriz 0-D o ​​1-D

Matriz o secuencia que contiene los datos

Ver también

detrend_mean

Otro algoritmo de tendencia.

detrend_none

Otro algoritmo de tendencia.

detrend

Una envoltura alrededor de todos los algoritmos de tendencia.

matplotlib.mlab. detrend_mean ( x , eje = Ninguno ) [fuente] #

Devuelve x menos la media ( x ).

Parámetros :
matriz o secuencia x

Array o secuencia que contiene los datos Puede tener cualquier dimensionalidad

eje int

El eje a lo largo del cual tomar la media. Ver numpy.meanpara una descripción de este argumento.

Ver también

detrend_linear

Otro algoritmo de tendencia.

detrend_none

Otro algoritmo de tendencia.

detrend

Una envoltura alrededor de todos los algoritmos de tendencia.

matplotlib.mlab. detrend_none ( x , eje = Ninguno ) [fuente] #

Retorno x : sin tendencia.

Parámetros :
x cualquier objeto

Un objeto que contiene los datos.

eje int

Este parámetro se ignora. Se incluye por compatibilidad con detrend_mean

Ver también

detrend_mean

Otro algoritmo de tendencia.

detrend_linear

Otro algoritmo de tendencia.

detrend

Una envoltura alrededor de todos los algoritmos de tendencia.

matplotlib.mlab. magnitud_spectrum ( x , Fs = Ninguno , ventana = Ninguno , pad_to = Ninguno , lados = Ninguno ) #

Calcule la magnitud (valor absoluto) del espectro de frecuencia de x . Los datos se rellenan hasta una longitud de pad_to y la ventana de función de ventana se aplica a la señal.

Parámetros :
matriz o secuencia x 1-D

Matriz o secuencia que contiene los datos

Fs flotante, por defecto: 2

La frecuencia de muestreo (muestras por unidad de tiempo). Se utiliza para calcular las frecuencias de Fourier, freqs , en ciclos por unidad de tiempo.

ventana invocable o ndarray, por defecto:window_hanning

Una función o un vector de longitud NFFT . Para crear vectores de ventana, consulte window_hanning, window_none, numpy.blackman, numpy.hamming, numpy.bartlett, scipy.signal, scipy.signal.get_window, etc. Si se pasa una función como argumento, debe tomar un segmento de datos como argumento y devolver la versión de ventana del segmento.

lados {'predeterminado', 'de un solo lado', 'de dos lados'}, opcional

A qué lados del espectro volver. 'predeterminado' es unilateral para datos reales y bilateral para datos complejos. 'oneside' fuerza el regreso de un espectro de un solo lado, mientras que 'twosided' fuerza dos lados.

pad_to int, opcional

El número de puntos a los que se rellena el segmento de datos al realizar la FFT. Si bien no aumenta la resolución real del espectro (la distancia mínima entre los picos resolubles), esto puede brindar más puntos en el gráfico, lo que permite obtener más detalles. Esto corresponde al parámetro nfft en la llamada a . El valor predeterminado es Ninguno, lo que establece pad_to igual a la longitud de la señal de entrada (es decir, sin relleno).

Devoluciones :
matriz de espectro 1-D

La magnitud (valor absoluto) del espectro de frecuencia.

matriz 1-D de frecuencias

Las frecuencias correspondientes a los elementos del espectro .

Ver también

psd

Devuelve la densidad espectral de potencia.

complex_spectrum

Devuelve el espectro de frecuencia de valor complejo.

magnitude_spectrum

Devuelve el valor absoluto de complex_spectrum.

angle_spectrum

Devuelve el ángulo del complex_spectrum.

phase_spectrum

Devuelve la fase (ángulo no ajustado) del complex_spectrum.

specgram

Puede devolver el espectro complejo de segmentos dentro de la señal.

matplotlib.mlab. phase_spectrum ( x , Fs = Ninguno , ventana = Ninguno , pad_to = Ninguno , lados = Ninguno ) #

Calcule la fase del espectro de frecuencia (espectro de fase no envuelto) de x . Los datos se rellenan hasta una longitud de pad_to y la ventana de función de ventana se aplica a la señal.

Parámetros :
matriz o secuencia x 1-D

Matriz o secuencia que contiene los datos

Fs flotante, por defecto: 2

La frecuencia de muestreo (muestras por unidad de tiempo). Se utiliza para calcular las frecuencias de Fourier, freqs , en ciclos por unidad de tiempo.

ventana invocable o ndarray, por defecto:window_hanning

Una función o un vector de longitud NFFT . Para crear vectores de ventana, consulte window_hanning, window_none, numpy.blackman, numpy.hamming, numpy.bartlett, scipy.signal, scipy.signal.get_window, etc. Si se pasa una función como argumento, debe tomar un segmento de datos como argumento y devolver la versión de ventana del segmento.

lados {'predeterminado', 'de un solo lado', 'de dos lados'}, opcional

A qué lados del espectro volver. 'predeterminado' es unilateral para datos reales y bilateral para datos complejos. 'oneside' fuerza el regreso de un espectro de un solo lado, mientras que 'twosided' fuerza dos lados.

pad_to int, opcional

El número de puntos a los que se rellena el segmento de datos al realizar la FFT. Si bien no aumenta la resolución real del espectro (la distancia mínima entre los picos resolubles), esto puede brindar más puntos en el gráfico, lo que permite obtener más detalles. Esto corresponde al parámetro nfft en la llamada a . El valor predeterminado es Ninguno, lo que establece pad_to igual a la longitud de la señal de entrada (es decir, sin relleno).

Devoluciones :
matriz de espectro 1-D

La fase del espectro de frecuencia (espectro de fase no envuelto).

matriz 1-D de frecuencias

Las frecuencias correspondientes a los elementos del espectro .

Ver también

psd

Devuelve la densidad espectral de potencia.

complex_spectrum

Devuelve el espectro de frecuencia de valor complejo.

magnitude_spectrum

Devuelve el valor absoluto de complex_spectrum.

angle_spectrum

Devuelve el ángulo del complex_spectrum.

phase_spectrum

Devuelve la fase (ángulo no ajustado) del complex_spectrum.

specgram

Puede devolver el espectro complejo de segmentos dentro de la señal.

matplotlib.mlab. psd ( x , NFFT = Ninguno , Fs = Ninguno , detrend = Ninguno , ventana = Ninguno , noverlap = Ninguno , pad_to = Ninguno , lados = Ninguno , scale_by_freq = Ninguno ) [fuente] #

Calcule la densidad espectral de potencia.

La densidad espectral de potencia\(P_{xx}\)por el método del periodograma medio de Welch. El vector x se divide en segmentos de longitud NFFT . A cada segmento se le elimina la tendencia mediante la función de tendencia y se le asigna una ventana mediante la ventana de la función . noverlap da la longitud de la superposición entre segmentos. los\(|\mathrm{fft}(i)|^2\) de cada segmento\(i\)se promedian para calcular\(P_{xx}\).

Si len( x ) < NFFT , se rellenará con ceros hasta NFFT .

Parámetros :
matriz o secuencia x 1-D

Matriz o secuencia que contiene los datos

Fs flotante, por defecto: 2

La frecuencia de muestreo (muestras por unidad de tiempo). Se utiliza para calcular las frecuencias de Fourier, freqs , en ciclos por unidad de tiempo.

ventana invocable o ndarray, por defecto:window_hanning

Una función o un vector de longitud NFFT . Para crear vectores de ventana, consulte window_hanning, window_none, numpy.blackman, numpy.hamming, numpy.bartlett, scipy.signal, scipy.signal.get_window, etc. Si se pasa una función como argumento, debe tomar un segmento de datos como argumento y devolver la versión de ventana del segmento.

lados {'predeterminado', 'de un solo lado', 'de dos lados'}, opcional

A qué lados del espectro volver. 'predeterminado' es unilateral para datos reales y bilateral para datos complejos. 'oneside' fuerza el regreso de un espectro de un solo lado, mientras que 'twosided' fuerza dos lados.

pad_to int, opcional

El número de puntos a los que se rellena el segmento de datos al realizar la FFT. Esto puede ser diferente de NFFT , que especifica la cantidad de puntos de datos utilizados. Si bien no aumenta la resolución real del espectro (la distancia mínima entre los picos resolubles), esto puede brindar más puntos en el gráfico, lo que permite obtener más detalles. Esto corresponde al parámetro nfft en la llamada a . El valor predeterminado es Ninguno, lo que establece pad_to igual a NFFT

NFFT int, predeterminado: 256

El número de puntos de datos utilizados en cada bloque para la FFT. Una potencia 2 es más eficiente. Esto NO debe usarse para obtener relleno cero, o la escala del resultado será incorrecta; use pad_to para esto en su lugar.

detrend {'ninguno', 'media', 'lineal'} o invocable, predeterminado: 'ninguno'

La función aplicada a cada segmento antes de fft-ing, diseñada para eliminar la tendencia media o lineal. A diferencia de MATLAB, donde el parámetro de tendencia es un vector, en Matplotlib es una función. El mlab módulo define detrend_none, detrend_meany detrend_linear, pero también puede usar una función personalizada. También puede usar una cadena para elegir una de las funciones: llamadas 'ninguna' detrend_none. llamadas 'malas' detrend_mean. llamadas 'lineales' detrend_linear.

scale_by_freq bool, por defecto: Verdadero

Si los valores de densidad resultantes deben escalarse según la frecuencia de escalado, que da la densidad en unidades de 1/Hz. Esto permite la integración sobre los valores de frecuencia devueltos. El valor predeterminado es True para la compatibilidad con MATLAB.

noverlap int, predeterminado: 0 (sin superposición)

El número de puntos de superposición entre segmentos.

Devoluciones :
Matriz Pxx 1-D

Los valores para el espectro de potencia\(P_{xx}\)(valor real)

matriz 1-D de frecuencias

Las frecuencias correspondientes a los elementos en Pxx

Ver también

specgram

specgramdifiere en la superposición predeterminada; en no devolver la media de los periodogramas del segmento; y en la devolución de los tiempos de los segmentos.

magnitude_spectrum

devuelve el espectro de magnitud.

csd

devuelve la densidad espectral entre dos señales.

Referencias

Bendat & Piersol -- Datos aleatorios: análisis y procedimientos de medición, John Wiley & Sons (1986)

matplotlib.mlab. specgram ( x , NFFT = Ninguno , Fs = Ninguno , detrend = Ninguno , ventana = Ninguno , noverlap = Ninguno , pad_to = Ninguno , lados = Ninguno , scale_by_freq = Ninguno , modo = Ninguno ) [fuente] #

Calcular un espectrograma.

Calcule y trace un espectrograma de datos en x . Los datos se dividen en segmentos de longitud NFFT y se calcula el espectro de cada sección. La función de ventana window se aplica a cada segmento y la cantidad de superposición de cada segmento se especifica con noverlap .

Parámetros :
x tipo matriz

Matriz o secuencia 1-D.

Fs flotante, por defecto: 2

La frecuencia de muestreo (muestras por unidad de tiempo). Se utiliza para calcular las frecuencias de Fourier, freqs , en ciclos por unidad de tiempo.

ventana invocable o ndarray, por defecto:window_hanning

Una función o un vector de longitud NFFT . Para crear vectores de ventana, consulte window_hanning, window_none, numpy.blackman, numpy.hamming, numpy.bartlett, scipy.signal, scipy.signal.get_window, etc. Si se pasa una función como argumento, debe tomar un segmento de datos como argumento y devolver la versión de ventana del segmento.

lados {'predeterminado', 'de un solo lado', 'de dos lados'}, opcional

A qué lados del espectro volver. 'predeterminado' es unilateral para datos reales y bilateral para datos complejos. 'oneside' fuerza el regreso de un espectro de un solo lado, mientras que 'twosided' fuerza dos lados.

pad_to int, opcional

El número de puntos a los que se rellena el segmento de datos al realizar la FFT. Esto puede ser diferente de NFFT , que especifica la cantidad de puntos de datos utilizados. Si bien no aumenta la resolución real del espectro (la distancia mínima entre los picos resolubles), esto puede brindar más puntos en el gráfico, lo que permite obtener más detalles. Esto corresponde al parámetro nfft en la llamada a . El valor predeterminado es Ninguno, lo que establece pad_to igual a NFFT

NFFT int, predeterminado: 256

El número de puntos de datos utilizados en cada bloque para la FFT. Una potencia 2 es más eficiente. Esto NO debe usarse para obtener relleno cero, o la escala del resultado será incorrecta; use pad_to para esto en su lugar.

detrend {'ninguno', 'media', 'lineal'} o invocable, predeterminado: 'ninguno'

La función aplicada a cada segmento antes de fft-ing, diseñada para eliminar la tendencia media o lineal. A diferencia de MATLAB, donde el parámetro de tendencia es un vector, en Matplotlib es una función. El mlab módulo define detrend_none, detrend_meany detrend_linear, pero también puede usar una función personalizada. También puede usar una cadena para elegir una de las funciones: llamadas 'ninguna' detrend_none. llamadas 'malas' detrend_mean. llamadas 'lineales' detrend_linear.

scale_by_freq bool, por defecto: Verdadero

Si los valores de densidad resultantes deben escalarse según la frecuencia de escalado, que da la densidad en unidades de 1/Hz. Esto permite la integración sobre los valores de frecuencia devueltos. El valor predeterminado es True para la compatibilidad con MATLAB.

noverlap int, por defecto: 128

El número de puntos de superposición entre bloques.

modo str, por defecto: 'psd'
Qué tipo de espectro utilizar:
'psd'

Devuelve la densidad espectral de potencia.

'complejo'

Devuelve el espectro de frecuencia de valor complejo.

'magnitud'

Devuelve el espectro de magnitud.

'ángulo'

Devuelve el espectro de fase sin desenvolver.

'fase'

Devuelve el espectro de fase con desenvolvimiento.

Devoluciones :
tipo matriz de espectro

Matriz 2D, las columnas son los periodogramas de segmentos sucesivos.

tipo matriz de frecuencias

Matriz 1-D, frecuencias correspondientes a las filas en el espectro .

t tipo matriz

Matriz 1-D, los tiempos correspondientes a los puntos medios de los segmentos (es decir, las columnas en el espectro ).

Ver también

psd

difiere en la superposición y en los valores de retorno.

complex_spectrum

similares, pero con frecuencias de valores complejos.

magnitude_spectrum

segmento único similar cuando el modo es 'magnitud'.

angle_spectrum

similar al segmento único cuando el modo es 'ángulo'.

phase_spectrum

similar al segmento único cuando el modo es 'fase'.

notas

detrend y scale_by_freq solo se aplican cuando el modo se establece en 'psd'.

matplotlib.mlab. stride_windows ( x , n , sin superposición = Ninguno , eje = 0 ) [fuente] #

[ Obsoleto ] Obtener todas las ventanas de x con longitud n como una sola matriz, utilizando zancadas para evitar la duplicación de datos.

Advertencia

No es seguro escribir en la matriz de salida. Múltiples elementos pueden apuntar a la misma parte de la memoria, por lo que modificar un valor puede cambiar otros.

Parámetros :
matriz o secuencia x 1D

Matriz o secuencia que contiene los datos.

n entero

El número de puntos de datos en cada ventana.

noverlap int, predeterminado: 0 (sin superposición)

La superposición entre ventanas adyacentes.

eje int

El eje a lo largo del cual se ejecutarán las ventanas.

notas

En desuso desde la versión 3.6.

Referencias

stackoverflow: ventana móvil para matrices 1D en Numpy? stackoverflow: uso de zancadas para un filtro de promedio móvil eficiente

matplotlib.mlab. window_hanning ( x ) [fuente] #

Devuelve x veces la ventana Hanning (o Hann) de len( x ).

Ver también

window_none

Otro algoritmo de ventana.

matplotlib.mlab. window_none ( x ) [fuente] #

Sin función de ventana; simplemente devuelva x .

Ver también

window_hanning

Otro algoritmo de ventana.