matplotlib.mlab
#
Funções numéricas Python escritas para compatibilidade com comandos MATLAB com os mesmos nomes. A maioria das funções numéricas do Python pode ser encontrada nas bibliotecas NumPy e SciPy . O que resta aqui é o código para realizar cálculos espectrais e estimativas de densidade do kernel.
Funções espectrais #
cohere
Coerência (densidade espectral cruzada normalizada)
csd
Densidade espectral cruzada usando o periodograma médio de Welch
detrend
Remova a linha média ou de melhor ajuste de uma matriz
psd
Densidade espectral de potência usando o periodograma médio de Welch
specgram
Espectrograma (espectro sobre segmentos de tempo)
complex_spectrum
Retorna o espectro de frequência de valor complexo de um sinal
magnitude_spectrum
Retorna a magnitude do espectro de frequência de um sinal
angle_spectrum
Retorna o ângulo (fase envolvida) do espectro de frequência de um sinal
phase_spectrum
Retorna a fase (ângulo não enrolado) do espectro de frequência de um sinal
detrend_mean
Remova a média de uma linha.
detrend_linear
Remova a linha de melhor ajuste de uma linha.
detrend_none
Retorne a linha original.
stride_windows
Obtenha todas as janelas em uma matriz de maneira eficiente em termos de memória
- classe matplotlib.mlab. GaussianKDE ( conjunto de dados , bw_method = Nenhum ) [fonte] #
Bases:
object
Representação de uma estimativa de densidade de kernel usando kernels gaussianos.
- Parâmetros :
- tipo array de conjunto de dados
Pontos de dados para estimar. No caso de dados univariados, trata-se de um array 1-D, caso contrário, um array 2D com forma (# of dims, # of data).
- bw_method str, escalar ou callable, opcional
O método usado para calcular a largura de banda do estimador. Isso pode ser 'scott', 'silverman', uma constante escalar ou um callable. Se for escalar, será usado diretamente como
kde.factor
. Se for callable, deve ter umaGaussianKDE
instância como único parâmetro e retornar um escalar. Se Nenhum (padrão), 'scott' é usado.
- Atributos :
- conjunto de dados ndarray
O conjunto de dados passado para o construtor.
- dim int
Número de dimensões.
- num_dp int
Número de pontos de dados.
- flutuação do fator
O fator de largura de banda, obtido de
kde.covariance_factor
, com o qual a matriz de covariância é multiplicada.- matriz de covariância
A matriz de covariância do conjunto de dados , dimensionada pela largura de banda calculada (
kde.factor
).- inv_cov ndarray
O inverso da covariância .
Métodos
kde.evaluate(pontos)
(ndarray) Avalie o pdf estimado em um conjunto de pontos fornecido.
kde(pontos)
(ndarray) O mesmo que kde.evaluate(pontos)
- avaliar ( pontos ) [fonte] #
Avalie a pdf estimada em um conjunto de pontos.
- Parâmetros :
- pontos (# de dimensões, # de pontos)-array
Como alternativa, um vetor (nº de dimensões) pode ser passado e tratado como um único ponto.
- Devoluções :
- (# de pontos,)-array
Os valores em cada ponto.
- Aumentos :
- ValueError se a dimensionalidade dos pontos de entrada for diferente
do que a dimensionalidade do KDE.
- matplotlib.mlab. angle_spectrum ( x , Fs = Nenhum , janela = Nenhum , pad_to = Nenhum , lados = Nenhum ) #
Calcule o ângulo do espectro de frequência (espectro de fase enrolado) de x . Os dados são preenchidos com um comprimento de pad_to e a janela da função de janelamento é aplicada ao sinal.
- Parâmetros :
- x matriz 1-D ou sequência
Array ou sequência contendo os dados
- Fs flutuante, padrão: 2
A frequência de amostragem (amostras por unidade de tempo). É usado para calcular as frequências de Fourier, freqs , em ciclos por unidade de tempo.
- janela chamável ou ndarray, padrão:
window_hanning
Uma função ou um vetor de comprimento NFFT . Para criar vetores de janela, consulte
window_hanning
,window_none
,numpy.blackman
,numpy.hamming
,numpy.bartlett
,scipy.signal
,scipy.signal.get_window
etc. Se uma função for passada como argumento, ela deve receber um segmento de dados como argumento e retornar a versão em janela do segmento.- lados {'padrão', 'onesided', 'twosided'}, opcional
De quais lados do espectro retornar. 'padrão' é unilateral para dados reais e bilateral para dados complexos. 'onesided' força o retorno de um espectro unilateral, enquanto 'twosided' força bilateral.
- pad_to int, opcional
O número de pontos para os quais o segmento de dados é preenchido ao executar a FFT. Embora não aumente a resolução real do espectro (a distância mínima entre picos resolvíveis), isso pode dar mais pontos no gráfico, permitindo mais detalhes. Isso corresponde ao parâmetro n
fft
na chamada para . O padrão é None, que define pad_to igual ao comprimento do sinal de entrada (ou seja, sem preenchimento).
- Devoluções :
- matriz 1-D de espectro
O ângulo do espectro de frequência (espectro de fase enrolado).
- matriz 1-D de frequências
As frequências correspondentes aos elementos do espectro .
Veja também
psd
Retorna a densidade espectral de potência.
complex_spectrum
Retorna o espectro de frequência de valor complexo.
magnitude_spectrum
Retorna o valor absoluto do
complex_spectrum
.angle_spectrum
Retorna o ângulo do
complex_spectrum
.phase_spectrum
Retorna a fase (ângulo desdobrado) do
complex_spectrum
.specgram
Pode retornar o espectro complexo de segmentos dentro do sinal.
- 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 ) [source] #
A coerência entre x e y . Coerência é a densidade espectral cruzada normalizada:
\[C_{xy} = \frac{|P_{xy}|^2}{P_{xx}P_{yy}}\]- Parâmetros :
- x, y
Array ou sequência contendo os dados
- Fs flutuante, padrão: 2
A frequência de amostragem (amostras por unidade de tempo). É usado para calcular as frequências de Fourier, freqs , em ciclos por unidade de tempo.
- janela chamável ou ndarray, padrão:
window_hanning
Uma função ou um vetor de comprimento NFFT . Para criar vetores de janela, consulte
window_hanning
,window_none
,numpy.blackman
,numpy.hamming
,numpy.bartlett
,scipy.signal
,scipy.signal.get_window
etc. Se uma função for passada como argumento, ela deve receber um segmento de dados como argumento e retornar a versão em janela do segmento.- lados {'padrão', 'onesided', 'twosided'}, opcional
De quais lados do espectro retornar. 'padrão' é unilateral para dados reais e bilateral para dados complexos. 'onesided' força o retorno de um espectro unilateral, enquanto 'twosided' força bilateral.
- pad_to int, opcional
O número de pontos para os quais o segmento de dados é preenchido ao executar a FFT. Isso pode ser diferente do NFFT , que especifica o número de pontos de dados usados. Embora não aumente a resolução real do espectro (a distância mínima entre picos resolvíveis), isso pode dar mais pontos no gráfico, permitindo mais detalhes. Isso corresponde ao parâmetro n
fft
na chamada para . O padrão é None, que define pad_to igual a NFFT- NFFT int, padrão: 256
O número de pontos de dados usados em cada bloco para a FFT. A potência 2 é mais eficiente. Isso NÃO deve ser usado para obter preenchimento zero, ou a escala do resultado ficará incorreta; use pad_to para isso.
- detrend {'none', 'mean', 'linear'} ou callable, padrão: 'none'
A função aplicada a cada segmento antes do fft-ing, projetada para remover a média ou tendência linear. Ao contrário do MATLAB, onde o parâmetro de tendência é um vetor, no Matplotlib é uma função. O
mlab
módulo definedetrend_none
,detrend_mean
edetrend_linear
, mas você também pode usar uma função personalizada. Você também pode usar uma string para escolher uma das funções: 'none' callsdetrend_none
. chamadas 'más'detrend_mean
. chamadas 'lineares'detrend_linear
.- scale_by_freq bool, padrão: True
Se os valores de densidade resultantes devem ser dimensionados pela frequência de escala, que fornece a densidade em unidades de 1/Hz. Isso permite a integração sobre os valores de frequência retornados. O padrão é True para compatibilidade com MATLAB.
- noverlap int, padrão: 0 (sem sobreposição)
O número de pontos de sobreposição entre os segmentos.
- Devoluções :
- Matriz Cxy 1-D
O vetor de coerência.
- matriz 1-D de frequências
As frequências para os elementos em Cxy .
- matplotlib.mlab. complex_spectrum ( x , Fs = Nenhum , janela = Nenhum , pad_to = Nenhum , lados = Nenhum ) #
Calcule o espectro de frequência de valor complexo de x . Os dados são preenchidos com um comprimento de pad_to e a janela da função de janelamento é aplicada ao sinal.
- Parâmetros :
- x matriz 1-D ou sequência
Array ou sequência contendo os dados
- Fs flutuante, padrão: 2
A frequência de amostragem (amostras por unidade de tempo). É usado para calcular as frequências de Fourier, freqs , em ciclos por unidade de tempo.
- janela chamável ou ndarray, padrão:
window_hanning
Uma função ou um vetor de comprimento NFFT . Para criar vetores de janela, consulte
window_hanning
,window_none
,numpy.blackman
,numpy.hamming
,numpy.bartlett
,scipy.signal
,scipy.signal.get_window
etc. Se uma função for passada como argumento, ela deve receber um segmento de dados como argumento e retornar a versão em janela do segmento.- lados {'padrão', 'onesided', 'twosided'}, opcional
De quais lados do espectro retornar. 'padrão' é unilateral para dados reais e bilateral para dados complexos. 'onesided' força o retorno de um espectro unilateral, enquanto 'twosided' força bilateral.
- pad_to int, opcional
O número de pontos para os quais o segmento de dados é preenchido ao executar a FFT. Embora não aumente a resolução real do espectro (a distância mínima entre picos resolvíveis), isso pode dar mais pontos no gráfico, permitindo mais detalhes. Isso corresponde ao parâmetro n
fft
na chamada para . O padrão é None, que define pad_to igual ao comprimento do sinal de entrada (ou seja, sem preenchimento).
- Devoluções :
- matriz 1-D de espectro
O espectro de frequência de valor complexo.
- matriz 1-D de frequências
As frequências correspondentes aos elementos do espectro .
Veja também
psd
Retorna a densidade espectral de potência.
complex_spectrum
Retorna o espectro de frequência de valor complexo.
magnitude_spectrum
Retorna o valor absoluto do
complex_spectrum
.angle_spectrum
Retorna o ângulo do
complex_spectrum
.phase_spectrum
Retorna a fase (ângulo desdobrado) do
complex_spectrum
.specgram
Pode retornar o espectro complexo de segmentos dentro do sinal.
- matplotlib.mlab. csd ( x , y , NFFT = Nenhum , Fs = Nenhum , detrend = Nenhum , janela = Nenhum , noverlap = Nenhum , pad_to = Nenhum , lados = Nenhum , scale_by_freq = Nenhum ) [fonte] #
Calcule a densidade espectral cruzada.
A densidade espectral cruzada\(P_{xy}\)pelo método do periodograma médio de Welch. Os vetores x e y são divididos em segmentos de comprimento NFFT . Cada segmento é desatendido pela função detrend e janelado pela função window . noverlap dá o comprimento da sobreposição entre os segmentos. O produto das FFTs diretas de x e y são calculados em média sobre cada segmento para calcular\(P_{xy}\), com uma escala para corrigir a perda de energia devido ao janelamento.
Se len( x ) < NFFT ou len( y ) < NFFT , eles serão preenchidos com zeros para NFFT .
- Parâmetros :
- matrizes ou sequências x, y 1-D
Arrays ou sequências contendo os dados
- Fs flutuante, padrão: 2
A frequência de amostragem (amostras por unidade de tempo). É usado para calcular as frequências de Fourier, freqs , em ciclos por unidade de tempo.
- janela chamável ou ndarray, padrão:
window_hanning
Uma função ou um vetor de comprimento NFFT . Para criar vetores de janela, consulte
window_hanning
,window_none
,numpy.blackman
,numpy.hamming
,numpy.bartlett
,scipy.signal
,scipy.signal.get_window
etc. Se uma função for passada como argumento, ela deve receber um segmento de dados como argumento e retornar a versão em janela do segmento.- lados {'padrão', 'onesided', 'twosided'}, opcional
De quais lados do espectro retornar. 'padrão' é unilateral para dados reais e bilateral para dados complexos. 'onesided' força o retorno de um espectro unilateral, enquanto 'twosided' força bilateral.
- pad_to int, opcional
O número de pontos para os quais o segmento de dados é preenchido ao executar a FFT. Isso pode ser diferente do NFFT , que especifica o número de pontos de dados usados. Embora não aumente a resolução real do espectro (a distância mínima entre picos resolvíveis), isso pode dar mais pontos no gráfico, permitindo mais detalhes. Isso corresponde ao parâmetro n
fft
na chamada para . O padrão é None, que define pad_to igual a NFFT- NFFT int, padrão: 256
O número de pontos de dados usados em cada bloco para a FFT. A potência 2 é mais eficiente. Isso NÃO deve ser usado para obter preenchimento zero, ou a escala do resultado ficará incorreta; use pad_to para isso.
- detrend {'none', 'mean', 'linear'} ou callable, padrão: 'none'
A função aplicada a cada segmento antes do fft-ing, projetada para remover a média ou tendência linear. Ao contrário do MATLAB, onde o parâmetro de tendência é um vetor, no Matplotlib é uma função. O
mlab
módulo definedetrend_none
,detrend_mean
edetrend_linear
, mas você também pode usar uma função personalizada. Você também pode usar uma string para escolher uma das funções: 'none' callsdetrend_none
. chamadas 'más'detrend_mean
. chamadas 'lineares'detrend_linear
.- scale_by_freq bool, padrão: True
Se os valores de densidade resultantes devem ser dimensionados pela frequência de escala, que fornece a densidade em unidades de 1/Hz. Isso permite a integração sobre os valores de frequência retornados. O padrão é True para compatibilidade com MATLAB.
- noverlap int, padrão: 0 (sem sobreposição)
O número de pontos de sobreposição entre os segmentos.
- Devoluções :
- Matriz Pxy 1-D
Os valores para o espectro cruzado\(P_{xy}\)antes da escala (valor real)
- matriz 1-D de frequências
As frequências correspondentes aos elementos em Pxy
Veja também
psd
equivalente a configuração .
y = x
Referências
Bendat & Piersol -- Random Data: Analysis and Measurement Procedures, John Wiley & Sons (1986)
- matplotlib.mlab. detrend ( x , chave = Nenhum , eixo = Nenhum ) [fonte] #
Retorne x com sua tendência removida.
- Parâmetros :
- matriz ou sequência x
Array ou sequência contendo os dados.
- chave {'padrão', 'constante', 'média', 'linear', 'nenhum'} ou função
O algoritmo de eliminação de tendências a ser usado. 'padrão', 'média' e 'constante' são os mesmos que
detrend_mean
. 'linear' é o mesmo quedetrend_linear
. 'nenhum' é o mesmo quedetrend_none
. O padrão é 'média'. Consulte as funções correspondentes para obter mais detalhes sobre os algoritmos. Também pode ser uma função que realiza a operação de eliminação de tendências.- eixo int
O eixo ao longo do qual fazer a remoção de tendências.
Veja também
detrend_mean
Implementação do algoritmo 'mean'.
detrend_linear
Implementação do algoritmo 'linear'.
detrend_none
Implementação do algoritmo 'none'.
- matplotlib.mlab. detrend_linear ( y ) [fonte] #
Retorno x menos linha de melhor ajuste; tendência 'linear'.
- Parâmetros :
- y Matriz ou sequência 0-D ou 1-D
Array ou sequência contendo os dados
Veja também
detrend_mean
Outro algoritmo de tendência.
detrend_none
Outro algoritmo de tendência.
detrend
Um wrapper em torno de todos os algoritmos de tendência.
- matplotlib.mlab. detrend_mean ( x , axis = None ) [fonte] #
Retorne x menos a média ( x ).
- Parâmetros :
- matriz ou sequência x
Array ou sequência contendo os dados Pode ter qualquer dimensionalidade
- eixo int
O eixo ao longo do qual obter a média. Consulte
numpy.mean
para obter uma descrição desse argumento.
Veja também
detrend_linear
Outro algoritmo de tendência.
detrend_none
Outro algoritmo de tendência.
detrend
Um wrapper em torno de todos os algoritmos de tendência.
- matplotlib.mlab. detrend_none ( x , axis = None ) [fonte] #
Retorno x : sem retirada de tendência.
- Parâmetros :
- x qualquer objeto
Um objeto contendo os dados
- eixo int
Este parâmetro é ignorado. Está incluído para compatibilidade com detrend_mean
Veja também
detrend_mean
Outro algoritmo de tendência.
detrend_linear
Outro algoritmo de tendência.
detrend
Um wrapper em torno de todos os algoritmos de tendência.
- matplotlib.mlab. magnitude_spectrum ( x , Fs = Nenhum , janela = Nenhum , pad_to = Nenhum , lados = Nenhum ) #
Calcule a magnitude (valor absoluto) do espectro de frequência de x . Os dados são preenchidos com um comprimento de pad_to e a janela da função de janelamento é aplicada ao sinal.
- Parâmetros :
- x matriz 1-D ou sequência
Array ou sequência contendo os dados
- Fs flutuante, padrão: 2
A frequência de amostragem (amostras por unidade de tempo). É usado para calcular as frequências de Fourier, freqs , em ciclos por unidade de tempo.
- janela chamável ou ndarray, padrão:
window_hanning
Uma função ou um vetor de comprimento NFFT . Para criar vetores de janela, consulte
window_hanning
,window_none
,numpy.blackman
,numpy.hamming
,numpy.bartlett
,scipy.signal
,scipy.signal.get_window
etc. Se uma função for passada como argumento, ela deve receber um segmento de dados como argumento e retornar a versão em janela do segmento.- lados {'padrão', 'onesided', 'twosided'}, opcional
De quais lados do espectro retornar. 'padrão' é unilateral para dados reais e bilateral para dados complexos. 'onesided' força o retorno de um espectro unilateral, enquanto 'twosided' força bilateral.
- pad_to int, opcional
O número de pontos para os quais o segmento de dados é preenchido ao executar a FFT. Embora não aumente a resolução real do espectro (a distância mínima entre picos resolvíveis), isso pode dar mais pontos no gráfico, permitindo mais detalhes. Isso corresponde ao parâmetro n
fft
na chamada para . O padrão é None, que define pad_to igual ao comprimento do sinal de entrada (ou seja, sem preenchimento).
- Devoluções :
- matriz 1-D de espectro
A magnitude (valor absoluto) do espectro de frequência.
- matriz 1-D de frequências
As frequências correspondentes aos elementos do espectro .
Veja também
psd
Retorna a densidade espectral de potência.
complex_spectrum
Retorna o espectro de frequência de valor complexo.
magnitude_spectrum
Retorna o valor absoluto do
complex_spectrum
.angle_spectrum
Retorna o ângulo do
complex_spectrum
.phase_spectrum
Retorna a fase (ângulo desdobrado) do
complex_spectrum
.specgram
Pode retornar o espectro complexo de segmentos dentro do sinal.
- matplotlib.mlab. phase_spectrum ( x , Fs = Nenhum , janela = Nenhum , pad_to = Nenhum , lados = Nenhum ) #
Calcule a fase do espectro de frequência (espectro de fase não envolvido) de x . Os dados são preenchidos com um comprimento de pad_to e a janela da função de janelamento é aplicada ao sinal.
- Parâmetros :
- x matriz 1-D ou sequência
Array ou sequência contendo os dados
- Fs flutuante, padrão: 2
A frequência de amostragem (amostras por unidade de tempo). É usado para calcular as frequências de Fourier, freqs , em ciclos por unidade de tempo.
- janela chamável ou ndarray, padrão:
window_hanning
Uma função ou um vetor de comprimento NFFT . Para criar vetores de janela, consulte
window_hanning
,window_none
,numpy.blackman
,numpy.hamming
,numpy.bartlett
,scipy.signal
,scipy.signal.get_window
etc. Se uma função for passada como argumento, ela deve receber um segmento de dados como argumento e retornar a versão em janela do segmento.- lados {'padrão', 'onesided', 'twosided'}, opcional
De quais lados do espectro retornar. 'padrão' é unilateral para dados reais e bilateral para dados complexos. 'onesided' força o retorno de um espectro unilateral, enquanto 'twosided' força bilateral.
- pad_to int, opcional
O número de pontos para os quais o segmento de dados é preenchido ao executar a FFT. Embora não aumente a resolução real do espectro (a distância mínima entre picos resolvíveis), isso pode dar mais pontos no gráfico, permitindo mais detalhes. Isso corresponde ao parâmetro n
fft
na chamada para . O padrão é None, que define pad_to igual ao comprimento do sinal de entrada (ou seja, sem preenchimento).
- Devoluções :
- matriz 1-D de espectro
A fase do espectro de frequência (espectro de fase desembrulhado).
- matriz 1-D de frequências
As frequências correspondentes aos elementos do espectro .
Veja também
psd
Retorna a densidade espectral de potência.
complex_spectrum
Retorna o espectro de frequência de valor complexo.
magnitude_spectrum
Retorna o valor absoluto do
complex_spectrum
.angle_spectrum
Retorna o ângulo do
complex_spectrum
.phase_spectrum
Retorna a fase (ângulo desdobrado) do
complex_spectrum
.specgram
Pode retornar o espectro complexo de segmentos dentro do sinal.
- matplotlib.mlab. psd ( x , NFFT = Nenhum , Fs = Nenhum , detrend = Nenhum , janela = Nenhum , noverlap = Nenhum , pad_to = Nenhum , lados = Nenhum , scale_by_freq = Nenhum ) [source] #
Calcule a densidade espectral de potência.
A densidade espectral de energia\(P_{xx}\)pelo método do periodograma médio de Welch. O vetor x é dividido em segmentos de comprimento NFFT . Cada segmento é desatendido pela função detrend e janelado pela função window . noverlap dá o comprimento da sobreposição entre os segmentos. o\(|\mathrm{fft}(i)|^2\) de cada segmento\(i\)são calculadas a média para calcular\(P_{xx}\).
Se len( x ) < NFFT , será preenchido com zeros para NFFT .
- Parâmetros :
- x matriz 1-D ou sequência
Array ou sequência contendo os dados
- Fs flutuante, padrão: 2
A frequência de amostragem (amostras por unidade de tempo). É usado para calcular as frequências de Fourier, freqs , em ciclos por unidade de tempo.
- janela chamável ou ndarray, padrão:
window_hanning
Uma função ou um vetor de comprimento NFFT . Para criar vetores de janela, consulte
window_hanning
,window_none
,numpy.blackman
,numpy.hamming
,numpy.bartlett
,scipy.signal
,scipy.signal.get_window
etc. Se uma função for passada como argumento, ela deve receber um segmento de dados como argumento e retornar a versão em janela do segmento.- lados {'padrão', 'onesided', 'twosided'}, opcional
De quais lados do espectro retornar. 'padrão' é unilateral para dados reais e bilateral para dados complexos. 'onesided' força o retorno de um espectro unilateral, enquanto 'twosided' força bilateral.
- pad_to int, opcional
O número de pontos para os quais o segmento de dados é preenchido ao executar a FFT. Isso pode ser diferente do NFFT , que especifica o número de pontos de dados usados. Embora não aumente a resolução real do espectro (a distância mínima entre picos resolvíveis), isso pode dar mais pontos no gráfico, permitindo mais detalhes. Isso corresponde ao parâmetro n
fft
na chamada para . O padrão é None, que define pad_to igual a NFFT- NFFT int, padrão: 256
O número de pontos de dados usados em cada bloco para a FFT. A potência 2 é mais eficiente. Isso NÃO deve ser usado para obter preenchimento zero, ou a escala do resultado ficará incorreta; use pad_to para isso.
- detrend {'none', 'mean', 'linear'} ou callable, padrão: 'none'
A função aplicada a cada segmento antes do fft-ing, projetada para remover a média ou tendência linear. Ao contrário do MATLAB, onde o parâmetro de tendência é um vetor, no Matplotlib é uma função. O
mlab
módulo definedetrend_none
,detrend_mean
edetrend_linear
, mas você também pode usar uma função personalizada. Você também pode usar uma string para escolher uma das funções: 'none' callsdetrend_none
. chamadas 'más'detrend_mean
. chamadas 'lineares'detrend_linear
.- scale_by_freq bool, padrão: True
Se os valores de densidade resultantes devem ser dimensionados pela frequência de escala, que fornece a densidade em unidades de 1/Hz. Isso permite a integração sobre os valores de frequência retornados. O padrão é True para compatibilidade com MATLAB.
- noverlap int, padrão: 0 (sem sobreposição)
O número de pontos de sobreposição entre os segmentos.
- Devoluções :
- Matriz Pxx 1-D
Os valores para o espectro de potência\(P_{xx}\)(valor real)
- matriz 1-D de frequências
As frequências correspondentes aos elementos em Pxx
Veja também
specgram
specgram
difere na sobreposição padrão; em não retornar a média dos periodogramas dos segmentos; e no retorno dos tempos dos segmentos.magnitude_spectrum
retorna o espectro de magnitude.
csd
retorna a densidade espectral entre dois sinais.
Referências
Bendat & Piersol -- Random Data: Analysis and Measurement Procedures, John Wiley & Sons (1986)
- matplotlib.mlab. specgram ( x , NFFT = Nenhum , Fs = Nenhum , detrend = Nenhum , janela = Nenhum , noverlap = Nenhum , pad_to = Nenhum , lados = Nenhum , scale_by_freq = Nenhum , modo = Nenhum ) [source] #
Calcular um espectrograma.
Calcule e plote um espectrograma de dados em x . Os dados são divididos em segmentos de comprimento NFFT e o espectro de cada seção é calculado. A janela de função de janelamento é aplicada a cada segmento e a quantidade de sobreposição de cada segmento é especificada com noverlap .
- Parâmetros :
- x tipo array
Matriz ou sequência 1-D.
- Fs flutuante, padrão: 2
A frequência de amostragem (amostras por unidade de tempo). É usado para calcular as frequências de Fourier, freqs , em ciclos por unidade de tempo.
- janela chamável ou ndarray, padrão:
window_hanning
Uma função ou um vetor de comprimento NFFT . Para criar vetores de janela, consulte
window_hanning
,window_none
,numpy.blackman
,numpy.hamming
,numpy.bartlett
,scipy.signal
,scipy.signal.get_window
etc. Se uma função for passada como argumento, ela deve receber um segmento de dados como argumento e retornar a versão em janela do segmento.- lados {'padrão', 'onesided', 'twosided'}, opcional
De quais lados do espectro retornar. 'padrão' é unilateral para dados reais e bilateral para dados complexos. 'onesided' força o retorno de um espectro unilateral, enquanto 'twosided' força bilateral.
- pad_to int, opcional
O número de pontos para os quais o segmento de dados é preenchido ao executar a FFT. Isso pode ser diferente do NFFT , que especifica o número de pontos de dados usados. Embora não aumente a resolução real do espectro (a distância mínima entre picos resolvíveis), isso pode dar mais pontos no gráfico, permitindo mais detalhes. Isso corresponde ao parâmetro n
fft
na chamada para . O padrão é None, que define pad_to igual a NFFT- NFFT int, padrão: 256
O número de pontos de dados usados em cada bloco para a FFT. A potência 2 é mais eficiente. Isso NÃO deve ser usado para obter preenchimento zero, ou a escala do resultado ficará incorreta; use pad_to para isso.
- detrend {'none', 'mean', 'linear'} ou callable, padrão: 'none'
A função aplicada a cada segmento antes do fft-ing, projetada para remover a média ou tendência linear. Ao contrário do MATLAB, onde o parâmetro de tendência é um vetor, no Matplotlib é uma função. O
mlab
módulo definedetrend_none
,detrend_mean
edetrend_linear
, mas você também pode usar uma função personalizada. Você também pode usar uma string para escolher uma das funções: 'none' callsdetrend_none
. chamadas 'más'detrend_mean
. chamadas 'lineares'detrend_linear
.- scale_by_freq bool, padrão: True
Se os valores de densidade resultantes devem ser dimensionados pela frequência de escala, que fornece a densidade em unidades de 1/Hz. Isso permite a integração sobre os valores de frequência retornados. O padrão é True para compatibilidade com MATLAB.
- noverlap int, padrão: 128
O número de pontos de sobreposição entre os blocos.
- modo str, padrão: 'psd'
- Que tipo de espectro usar:
- 'psd'
Retorna a densidade espectral de potência.
- 'complexo'
Retorna o espectro de frequência de valor complexo.
- 'magnitude'
Retorna o espectro de magnitude.
- 'ângulo'
Retorna o espectro de fase sem desempacotar.
- 'Estágio'
Retorna o espectro de fase com desdobramento.
- Devoluções :
- semelhante a uma matriz de espectro
Matriz 2D, as colunas são os periodogramas de segmentos sucessivos.
- tipo matriz de frequências
Matriz 1-D, frequências correspondentes às linhas no espectro .
- tipo array
Matriz 1-D, os tempos correspondentes aos pontos médios dos segmentos (ou seja, as colunas no espectro ).
Veja também
psd
difere na sobreposição e nos valores de retorno.
complex_spectrum
semelhantes, mas com frequências de valores complexos.
magnitude_spectrum
segmento único semelhante quando o modo é 'magnitude'.
angle_spectrum
semelhante ao segmento único quando o modo é 'ângulo'.
phase_spectrum
semelhante ao segmento único quando o modo é 'fase'.
Notas
detrend e scale_by_freq só se aplicam quando o modo é definido como 'psd'.
- matplotlib.mlab. stride_windows ( x , n , noverlap = Nenhum , eixo = 0 ) [fonte] #
[ Obsoleto ] Obtenha todas as janelas de x com comprimento n como uma única matriz, usando passos para evitar a duplicação de dados.
Aviso
Não é seguro gravar no array de saída. Vários elementos podem apontar para o mesmo pedaço de memória, portanto, modificar um valor pode alterar outros.
- Parâmetros :
- x matriz 1D ou sequência
Array ou sequência contendo os dados.
- n int
O número de pontos de dados em cada janela.
- noverlap int, padrão: 0 (sem sobreposição)
A sobreposição entre janelas adjacentes.
- eixo int
O eixo ao longo do qual as janelas serão executadas.
Notas
Obsoleto desde a versão 3.6.
Referências
stackoverflow: Janela rolante para matrizes 1D no Numpy? stackoverflow: Usando strides para um filtro de média móvel eficiente
- matplotlib.mlab. window_hanning ( x ) [fonte] #
Retorne x vezes a janela Hanning (ou Hann) de len( x ).
Veja também
window_none
Outro algoritmo de janela.
- matplotlib.mlab. window_none ( x ) [fonte] #
Nenhuma função de janela; simplesmente retorne x .
Veja também
window_hanning
Outro algoritmo de janela.