matplotlib.mlab#
이름이 같은 MATLAB 명령과의 호환성을 위해 작성된 숫자 Python 함수입니다. 대부분의 수치 Python 함수는 NumPy 및 SciPy 라이브러리에서 찾을 수 있습니다. 여기에 남아 있는 것은 스펙트럼 계산 및 커널 밀도 추정을 수행하기 위한 코드입니다.
스펙트럼 함수 #
cohere일관성(정규화된 교차 스펙트럼 밀도)
csdWelch의 평균 주기도를 사용한 교차 스펙트럼 밀도
detrend배열에서 평균 또는 최적선을 제거합니다.
psdWelch의 평균 주기도를 사용한 전력 스펙트럼 밀도
specgram스펙트로그램(시간 세그먼트에 대한 스펙트럼)
complex_spectrum신호의 복소수 값 주파수 스펙트럼 반환
magnitude_spectrum신호의 주파수 스펙트럼 크기 반환
angle_spectrum신호의 주파수 스펙트럼 각도(래핑된 위상)를 반환합니다.
phase_spectrum신호 주파수 스펙트럼의 위상(포장되지 않은 각도)을 반환합니다.
detrend_mean선에서 평균을 제거합니다.
detrend_linear선에서 가장 잘 맞는 선을 제거합니다.
detrend_none원래 줄을 반환합니다.
stride_windows메모리 효율적인 방식으로 배열의 모든 창 가져오기
- 클래스 matplotlib.mlab. GaussianKDE ( 데이터세트 , bw_method = 없음 ) [출처] #
베이스:
object가우시안 커널을 사용한 커널 밀도 추정치의 표현.
- 매개변수 :
- 데이터 세트 배열 유사
추정할 데이터 포인트. 일변량 데이터의 경우 이것은 1D 배열이고, 그렇지 않으면 모양이 있는 2D 배열(딤 수, 데이터 수)입니다.
- bw_method str, 스칼라 또는 호출 가능, 선택 사항
추정기 대역폭을 계산하는 데 사용되는 방법입니다. 이것은 'scott', 'silverman', 스칼라 상수 또는 콜러블일 수 있습니다. 스칼라인 경우 로 직접 사용됩니다
kde.factor. 콜러블인 경우GaussianKDE인스턴스를 매개변수로만 사용하고 스칼라를 반환해야 합니다. None(기본값)인 경우 'scott'이 사용됩니다.
- 속성 :
- 데이터 세트 ndarray
생성자에게 전달된 데이터 세트입니다.
- 희미한 정수
차원 수.
- num_dp 정수
데이터 포인트 수.
- 인수 부동 소수점
kde.covariance_factor공분산 행렬이 곱해지는 에서 얻은 대역폭 인수 입니다.- 공분산 ndarray
계산된 대역폭( )으로 스케일링된 dataset 의 공분산 행렬
kde.factor.- inv_cov ndarray
공분산 의 역함수 .
행동 양식
kde.evaluate(포인트)
(ndarray) 제공된 포인트 집합에서 추정된 pdf를 평가합니다.
kde(포인트)
(ndarray) kde.evaluate(포인트)와 동일
- matplotlib.mlab. angle_spectrum ( x , Fs = 없음 , 창 = 없음 , pad_to = 없음 , 측면 = 없음 ) #
x 의 주파수 스펙트럼(래핑된 위상 스펙트럼)의 각도를 계산합니다 . 데이터는 pad_to 의 길이만큼 패딩되고 윈도우 기능 윈도우 가 신호에 적용됩니다.
- 매개변수 :
- x 1차원 배열 또는 시퀀스
데이터를 포함하는 배열 또는 시퀀스
- Fs float, 기본값: 2
샘플링 빈도(시간 단위당 샘플)입니다. 시간 단위당 주기로 푸리에 주파수 freqs 를 계산하는 데 사용됩니다 .
- 창 호출 가능 또는 ndarray, 기본값:
window_hanning 길이가 NFFT 인 함수 또는 벡터 . 창 벡터를 생성하려면 , , , , , , 등을 참조하십시오
window_hanning.window_none함수numpy.blackman가numpy.hamming인수numpy.bartlett로scipy.signal전달scipy.signal.get_window되면 데이터 세그먼트를 인수로 가져와 세그먼트의 윈도우 버전을 반환해야 합니다.- {'default', 'onesided', 'twosided'}, 옵션
반환할 스펙트럼의 측면. 'default'는 실제 데이터의 경우 단측이고 복소수 데이터의 경우 양면입니다. '일면'은 단면 스펙트럼의 반환을 강제하고 '양면'은 양면을 강제합니다.
- pad_to 정수, 선택 사항
FFT를 수행할 때 데이터 세그먼트가 패딩되는 포인트 수입니다. 스펙트럼의 실제 분해능(분해 가능한 피크 사이의 최소 거리)을 증가시키지 않으면서 플롯에 더 많은 포인트를 제공하여 더 자세한 정보를 제공할 수 있습니다. 이것은 에 대한 호출 의 n
fft매개변수에 해당합니다 . 기본값은 None이며 pad_to 를 입력 신호의 길이와 동일하게 설정합니다(즉, 패딩 없음).
- 반환 :
- 스펙트럼 1차원 배열
주파수 스펙트럼의 각도(래핑된 위상 스펙트럼).
- 주파수 1차원 배열
스펙트럼 의 요소에 해당하는 주파수 .
또한보십시오
psd전력 스펙트럼 밀도를 반환합니다.
complex_spectrum복소수 값의 주파수 스펙트럼을 반환합니다.
magnitude_spectrum의 절대값을 반환합니다
complex_spectrum.angle_spectrum의 각도를 반환합니다
complex_spectrum.phase_spectrum의 위상(언래핑 각도)을 반환합니다
complex_spectrum.specgram신호 내 세그먼트의 복잡한 스펙트럼을 반환할 수 있습니다.
- 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 ) [출처] #
x 와 y 사이의 일관성 . 일관성은 정규화된 교차 스펙트럼 밀도입니다.
\[C_{xy} = \frac{|P_{xy}|^2}{P_{xx}P_{yy}}\]- 매개변수 :
- 엑스, 와이
데이터를 포함하는 배열 또는 시퀀스
- Fs float, 기본값: 2
샘플링 빈도(시간 단위당 샘플)입니다. 시간 단위당 주기로 푸리에 주파수 freqs 를 계산하는 데 사용됩니다 .
- 창 호출 가능 또는 ndarray, 기본값:
window_hanning 길이가 NFFT 인 함수 또는 벡터 . 창 벡터를 생성하려면 , , , , , , 등을 참조하십시오
window_hanning.window_none함수numpy.blackman가numpy.hamming인수numpy.bartlett로scipy.signal전달scipy.signal.get_window되면 데이터 세그먼트를 인수로 가져와 세그먼트의 윈도우 버전을 반환해야 합니다.- {'default', 'onesided', 'twosided'}, 옵션
반환할 스펙트럼의 측면. 'default'는 실제 데이터의 경우 단측이고 복소수 데이터의 경우 양면입니다. '일면'은 단면 스펙트럼의 반환을 강제하고 '양면'은 양면을 강제합니다.
- pad_to 정수, 선택 사항
FFT를 수행할 때 데이터 세그먼트가 패딩되는 포인트 수입니다. 이것은 사용된 데이터 포인트의 수를 지정하는 NFFT 와 다를 수 있습니다 . 스펙트럼의 실제 분해능(분해 가능한 피크 사이의 최소 거리)을 증가시키지 않으면서 플롯에 더 많은 포인트를 제공하여 더 자세한 정보를 제공할 수 있습니다. 이것은 에 대한 호출 의 n
fft매개변수에 해당합니다 . 기본값은 None이며 pad_to 를 NFFT 와 동일하게 설정합니다.- NFFT 정수, 기본값: 256
FFT의 각 블록에서 사용되는 데이터 포인트의 수입니다. 전원 2가 가장 효율적입니다. 제로 패딩을 얻기 위해 사용하면 안 됩니다. 그렇지 않으면 결과의 스케일링이 올바르지 않습니다 . 대신 pad_to 를 사용하십시오.
- detrend {'none', 'mean', 'linear'} 또는 호출 가능, 기본값: 'none'
fft-ing 전에 각 세그먼트에 적용되는 함수로 평균 또는 선형 추세를 제거하도록 설계되었습니다. detrend 매개변수가 벡터인 MATLAB과 달리 Matplotlib에서는 함수입니다.
mlab모듈은 ,detrend_none및detrend_mean를 정의detrend_linear하지만 사용자 지정 함수도 사용할 수 있습니다. 문자열을 사용하여 함수 중 하나를 선택할 수도 있습니다. 'none' callsdetrend_none. '의미' 전화detrend_mean. '선형' 호출detrend_linear.- scale_by_freq 부울, 기본값: 참
결과 밀도 값이 1/Hz 단위로 밀도를 제공하는 스케일링 주파수로 스케일링되어야 하는지 여부입니다. 이렇게 하면 반환된 빈도 값에 대한 통합이 가능합니다. MATLAB 호환성의 경우 기본값은 True입니다.
- noverlap int, 기본값: 0(겹침 없음)
세그먼트 간의 겹침 지점 수입니다.
- 반환 :
- Cxy 1차원 배열
일관성 벡터.
- 주파수 1차원 배열
Cxy 의 요소에 대한 주파수입니다 .
- matplotlib.mlab. complex_spectrum ( x , Fs = 없음 , window = 없음 , pad_to = 없음 , Sides = 없음 ) #
x 의 복소수 값 주파수 스펙트럼을 계산합니다 . 데이터는 pad_to 의 길이만큼 패딩되고 윈도우 기능 윈도우 가 신호에 적용됩니다.
- 매개변수 :
- x 1차원 배열 또는 시퀀스
데이터를 포함하는 배열 또는 시퀀스
- Fs float, 기본값: 2
샘플링 빈도(시간 단위당 샘플)입니다. 시간 단위당 주기로 푸리에 주파수 freqs 를 계산하는 데 사용됩니다 .
- 창 호출 가능 또는 ndarray, 기본값:
window_hanning 길이가 NFFT 인 함수 또는 벡터 . 창 벡터를 생성하려면 , , , , , , 등을 참조하십시오
window_hanning.window_none함수numpy.blackman가numpy.hamming인수numpy.bartlett로scipy.signal전달scipy.signal.get_window되면 데이터 세그먼트를 인수로 가져와 세그먼트의 윈도우 버전을 반환해야 합니다.- {'default', 'onesided', 'twosided'}, 옵션
반환할 스펙트럼의 측면. 'default'는 실제 데이터의 경우 단측이고 복소수 데이터의 경우 양면입니다. '일면'은 단면 스펙트럼의 반환을 강제하고 '양면'은 양면을 강제합니다.
- pad_to 정수, 선택 사항
FFT를 수행할 때 데이터 세그먼트가 패딩되는 포인트 수입니다. 스펙트럼의 실제 분해능(분해 가능한 피크 사이의 최소 거리)을 증가시키지 않으면서 플롯에 더 많은 포인트를 제공하여 더 자세한 정보를 제공할 수 있습니다. 이것은 에 대한 호출 의 n
fft매개변수에 해당합니다 . 기본값은 None이며 pad_to 를 입력 신호의 길이와 동일하게 설정합니다(즉, 패딩 없음).
- 반환 :
- 스펙트럼 1차원 배열
복소수 값의 주파수 스펙트럼.
- 주파수 1차원 배열
스펙트럼 의 요소에 해당하는 주파수 .
또한보십시오
psd전력 스펙트럼 밀도를 반환합니다.
complex_spectrum복소수 값의 주파수 스펙트럼을 반환합니다.
magnitude_spectrum의 절대값을 반환합니다
complex_spectrum.angle_spectrum의 각도를 반환합니다
complex_spectrum.phase_spectrum의 위상(언래핑 각도)을 반환합니다
complex_spectrum.specgram신호 내 세그먼트의 복잡한 스펙트럼을 반환할 수 있습니다.
- matplotlib.mlab. csd ( x , y , NFFT = 없음 , Fs = 없음 , detrend = 없음 , window = 없음 , noverlap = 없음 , pad_to = 없음 , Sides = 없음 , scale_by_freq = 없음 ) [출처] #
교차 스펙트럼 밀도를 계산합니다.
교차 스펙트럼 밀도\(P_{xy}\)Welch의 평균 주기도 방법에 의해. 벡터 x 와 y 는 NFFT 길이 세그먼트 로 나뉩니다 . 각 세그먼트는 detrend 함수에 의해 추세가 제거 되고 window 함수에 의해 창이 표시 됩니다. noverlap 은 세그먼트 간의 중첩 길이를 제공합니다. x 와 y 의 직접 FFT의 곱은 계산을 위해 각 세그먼트에 대해 평균화됩니다.\(P_{xy}\), 윈도우잉으로 인한 전력 손실을 수정하기 위한 스케일링이 있습니다.
len( x ) < NFFT 또는 len( y ) < NFFT 인 경우 NFFT 에 0이 채워집니다 .
- 매개변수 :
- x, y 1차원 배열 또는 시퀀스
데이터를 포함하는 배열 또는 시퀀스
- Fs float, 기본값: 2
샘플링 빈도(시간 단위당 샘플)입니다. 시간 단위당 주기로 푸리에 주파수 freqs 를 계산하는 데 사용됩니다 .
- 창 호출 가능 또는 ndarray, 기본값:
window_hanning 길이가 NFFT 인 함수 또는 벡터 . 창 벡터를 생성하려면 , , , , , , 등을 참조하십시오
window_hanning.window_none함수numpy.blackman가numpy.hamming인수numpy.bartlett로scipy.signal전달scipy.signal.get_window되면 데이터 세그먼트를 인수로 가져와 세그먼트의 윈도우 버전을 반환해야 합니다.- {'default', 'onesided', 'twosided'}, 옵션
반환할 스펙트럼의 측면. 'default'는 실제 데이터의 경우 단측이고 복소수 데이터의 경우 양면입니다. '일면'은 단면 스펙트럼의 반환을 강제하고 '양면'은 양면을 강제합니다.
- pad_to 정수, 선택 사항
FFT를 수행할 때 데이터 세그먼트가 패딩되는 포인트 수입니다. 이것은 사용된 데이터 포인트의 수를 지정하는 NFFT 와 다를 수 있습니다 . 스펙트럼의 실제 분해능(분해 가능한 피크 사이의 최소 거리)을 증가시키지 않으면서 플롯에 더 많은 포인트를 제공하여 더 자세한 정보를 제공할 수 있습니다. 이것은 에 대한 호출 의 n
fft매개변수에 해당합니다 . 기본값은 None이며 pad_to 를 NFFT 와 동일하게 설정합니다.- NFFT 정수, 기본값: 256
FFT의 각 블록에서 사용되는 데이터 포인트의 수입니다. 전원 2가 가장 효율적입니다. 제로 패딩을 얻기 위해 사용하면 안 됩니다. 그렇지 않으면 결과의 스케일링이 올바르지 않습니다 . 대신 pad_to 를 사용하십시오.
- detrend {'none', 'mean', 'linear'} 또는 호출 가능, 기본값: 'none'
fft-ing 전에 각 세그먼트에 적용되는 함수로 평균 또는 선형 추세를 제거하도록 설계되었습니다. detrend 매개변수가 벡터인 MATLAB과 달리 Matplotlib에서는 함수입니다.
mlab모듈은 ,detrend_none및detrend_mean를 정의detrend_linear하지만 사용자 지정 함수도 사용할 수 있습니다. 문자열을 사용하여 함수 중 하나를 선택할 수도 있습니다. 'none' callsdetrend_none. '의미' 전화detrend_mean. '선형' 호출detrend_linear.- scale_by_freq 부울, 기본값: 참
결과 밀도 값이 1/Hz 단위로 밀도를 제공하는 스케일링 주파수로 스케일링되어야 하는지 여부입니다. 이렇게 하면 반환된 빈도 값에 대한 통합이 가능합니다. MATLAB 호환성의 경우 기본값은 True입니다.
- noverlap int, 기본값: 0(겹침 없음)
세그먼트 간의 겹침 지점 수입니다.
- 반환 :
- Pxy 1차원 배열
교차 스펙트럼 값\(P_{xy}\)스케일링 전(실수)
- 주파수 1차원 배열
Pxy 의 요소에 해당하는 주파수
또한보십시오
psd설정과 동일합니다 .
y = x
참조
Bendat & Piersol -- 무작위 데이터: 분석 및 측정 절차, John Wiley & Sons(1986)
- matplotlib.mlab. detrend ( x , key = None , axis = None ) [소스] #
추세가 제거된 x 를 반환 합니다.
- 매개변수 :
- x 배열 또는 시퀀스
데이터를 포함하는 배열 또는 시퀀스.
- 키 {'default', 'constant', 'mean', 'linear', 'none'} 또는 함수
사용할 추세 제거 알고리즘입니다. '디폴트', '평균', '상수'는 와 동일합니다
detrend_mean. '선형'은 와 동일합니다detrend_linear. '없음'은 와 동일합니다detrend_none. 기본값은 '평균'입니다. 알고리즘에 대한 자세한 내용은 해당 함수를 참조하십시오. detrend 작업을 수행하는 함수일 수도 있습니다.- 축 정수
추세 제거를 수행할 축입니다.
또한보십시오
detrend_mean'평균' 알고리즘의 구현.
detrend_linear'선형' 알고리즘의 구현.
detrend_none'없음' 알고리즘의 구현.
- matplotlib.mlab. detrend_linear ( y ) [소스] #
x 빼기 최적선을 반환 합니다. '선형' 디트렌딩.
- 매개변수 :
- y 0-D 또는 1-D 배열 또는 시퀀스
데이터를 포함하는 배열 또는 시퀀스
또한보십시오
detrend_mean또 다른 detrend 알고리즘.
detrend_none또 다른 detrend 알고리즘.
detrend모든 detrend 알고리즘을 둘러싼 래퍼.
- matplotlib.mlab. detrend_mean ( x , 축 = 없음 ) [소스] #
x 빼기 평균( x )을 반환 합니다.
- 매개변수 :
- x 배열 또는 시퀀스
데이터를 포함하는 배열 또는 시퀀스 모든 차원을 가질 수 있음
- 축 정수
평균을 구하는 축입니다.
numpy.mean이 인수에 대한 설명은 를 참조하십시오 .
또한보십시오
detrend_linear또 다른 detrend 알고리즘.
detrend_none또 다른 detrend 알고리즘.
detrend모든 detrend 알고리즘을 둘러싼 래퍼.
- matplotlib.mlab. detrend_none ( x , 축 = 없음 ) [소스] #
반환 x : 디트렌딩 없음.
- 매개변수 :
- x 임의의 개체
데이터를 담고 있는 객체
- 축 정수
이 매개변수는 무시됩니다. detrend_mean과의 호환성을 위해 포함됩니다.
또한보십시오
detrend_mean또 다른 detrend 알고리즘.
detrend_linear또 다른 detrend 알고리즘.
detrend모든 detrend 알고리즘을 둘러싼 래퍼.
- matplotlib.mlab. 크기 _스펙트럼 ( x , Fs = 없음 , 창 = 없음 , pad_to = 없음 , 측면 = 없음 ) #
x 주파수 스펙트럼의 크기(절대값)를 계산합니다 . 데이터는 pad_to 의 길이만큼 패딩되고 윈도우 기능 윈도우 가 신호에 적용됩니다.
- 매개변수 :
- x 1차원 배열 또는 시퀀스
데이터를 포함하는 배열 또는 시퀀스
- Fs float, 기본값: 2
샘플링 빈도(시간 단위당 샘플)입니다. 시간 단위당 주기로 푸리에 주파수 freqs 를 계산하는 데 사용됩니다 .
- 창 호출 가능 또는 ndarray, 기본값:
window_hanning 길이가 NFFT 인 함수 또는 벡터 . 창 벡터를 생성하려면 , , , , , , 등을 참조하십시오
window_hanning.window_none함수numpy.blackman가numpy.hamming인수numpy.bartlett로scipy.signal전달scipy.signal.get_window되면 데이터 세그먼트를 인수로 가져와 세그먼트의 윈도우 버전을 반환해야 합니다.- {'default', 'onesided', 'twosided'}, 옵션
반환할 스펙트럼의 측면. 'default'는 실제 데이터의 경우 단측이고 복소수 데이터의 경우 양면입니다. '일면'은 단면 스펙트럼의 반환을 강제하고 '양면'은 양면을 강제합니다.
- pad_to 정수, 선택 사항
FFT를 수행할 때 데이터 세그먼트가 패딩되는 포인트 수입니다. 스펙트럼의 실제 분해능(분해 가능한 피크 사이의 최소 거리)을 증가시키지 않으면서 플롯에 더 많은 포인트를 제공하여 더 자세한 정보를 제공할 수 있습니다. 이것은 에 대한 호출 의 n
fft매개변수에 해당합니다 . 기본값은 None이며 pad_to 를 입력 신호의 길이와 동일하게 설정합니다(즉, 패딩 없음).
- 반환 :
- 스펙트럼 1차원 배열
주파수 스펙트럼의 크기(절대값)입니다.
- 주파수 1차원 배열
스펙트럼 의 요소에 해당하는 주파수 .
또한보십시오
psd전력 스펙트럼 밀도를 반환합니다.
complex_spectrum복소수 값의 주파수 스펙트럼을 반환합니다.
magnitude_spectrum의 절대값을 반환합니다
complex_spectrum.angle_spectrum의 각도를 반환합니다
complex_spectrum.phase_spectrum의 위상(언래핑 각도)을 반환합니다
complex_spectrum.specgram신호 내 세그먼트의 복잡한 스펙트럼을 반환할 수 있습니다.
- matplotlib.mlab. phase_spectrum ( x , Fs = 없음 , window = 없음 , pad_to = 없음 , Sides = 없음 ) #
x 의 주파수 스펙트럼(언래핑된 위상 스펙트럼)의 위상을 계산합니다 . 데이터는 pad_to 의 길이만큼 패딩되고 윈도우 기능 윈도우 가 신호에 적용됩니다.
- 매개변수 :
- x 1차원 배열 또는 시퀀스
데이터를 포함하는 배열 또는 시퀀스
- Fs float, 기본값: 2
샘플링 빈도(시간 단위당 샘플)입니다. 시간 단위당 주기로 푸리에 주파수 freqs 를 계산하는 데 사용됩니다 .
- 창 호출 가능 또는 ndarray, 기본값:
window_hanning 길이가 NFFT 인 함수 또는 벡터 . 창 벡터를 생성하려면 , , , , , , 등을 참조하십시오
window_hanning.window_none함수numpy.blackman가numpy.hamming인수numpy.bartlett로scipy.signal전달scipy.signal.get_window되면 데이터 세그먼트를 인수로 가져와 세그먼트의 윈도우 버전을 반환해야 합니다.- {'default', 'onesided', 'twosided'}, 옵션
반환할 스펙트럼의 측면. 'default'는 실제 데이터의 경우 단측이고 복소수 데이터의 경우 양면입니다. '일면'은 단면 스펙트럼의 반환을 강제하고 '양면'은 양면을 강제합니다.
- pad_to 정수, 선택 사항
FFT를 수행할 때 데이터 세그먼트가 패딩되는 포인트 수입니다. 스펙트럼의 실제 분해능(분해 가능한 피크 사이의 최소 거리)을 증가시키지 않으면서 플롯에 더 많은 포인트를 제공하여 더 자세한 정보를 제공할 수 있습니다. 이것은 에 대한 호출 의 n
fft매개변수에 해당합니다 . 기본값은 None이며 pad_to 를 입력 신호의 길이와 동일하게 설정합니다(즉, 패딩 없음).
- 반환 :
- 스펙트럼 1차원 배열
주파수 스펙트럼의 위상(포장되지 않은 위상 스펙트럼).
- 주파수 1차원 배열
스펙트럼 의 요소에 해당하는 주파수 .
또한보십시오
psd전력 스펙트럼 밀도를 반환합니다.
complex_spectrum복소수 값의 주파수 스펙트럼을 반환합니다.
magnitude_spectrum의 절대값을 반환합니다
complex_spectrum.angle_spectrum의 각도를 반환합니다
complex_spectrum.phase_spectrum의 위상(언래핑 각도)을 반환합니다
complex_spectrum.specgram신호 내 세그먼트의 복잡한 스펙트럼을 반환할 수 있습니다.
- matplotlib.mlab. psd ( x , NFFT = 없음 , Fs = 없음 , detrend = 없음 , window = 없음 , noverlap = 없음 , pad_to = 없음 , Sides = 없음 , scale_by_freq = 없음 ) [출처] #
전력 스펙트럼 밀도를 계산합니다.
전력 스펙트럼 밀도\(P_{xx}\)Welch의 평균 주기도 방법에 의해. 벡터 x 는 NFFT 길이 세그먼트 로 나뉩니다 . 각 세그먼트는 detrend 함수에 의해 추세가 제거 되고 window 함수에 의해 창이 표시 됩니다. noverlap 은 세그먼트 간의 중첩 길이를 제공합니다. 그만큼\(|\mathrm{fft}(i)|^2\) 각 세그먼트의\(i\)계산하기 위해 평균화됩니다.\(P_{xx}\).
len( x ) < NFFT 인 경우 NFFT 에 0이 채워집니다 .
- 매개변수 :
- x 1차원 배열 또는 시퀀스
데이터를 포함하는 배열 또는 시퀀스
- Fs float, 기본값: 2
샘플링 빈도(시간 단위당 샘플)입니다. 시간 단위당 주기로 푸리에 주파수 freqs 를 계산하는 데 사용됩니다 .
- 창 호출 가능 또는 ndarray, 기본값:
window_hanning 길이가 NFFT 인 함수 또는 벡터 . 창 벡터를 생성하려면 , , , , , , 등을 참조하십시오
window_hanning.window_none함수numpy.blackman가numpy.hamming인수numpy.bartlett로scipy.signal전달scipy.signal.get_window되면 데이터 세그먼트를 인수로 가져와 세그먼트의 윈도우 버전을 반환해야 합니다.- {'default', 'onesided', 'twosided'}, 옵션
반환할 스펙트럼의 측면. 'default'는 실제 데이터의 경우 단측이고 복소수 데이터의 경우 양면입니다. '일면'은 단면 스펙트럼의 반환을 강제하고 '양면'은 양면을 강제합니다.
- pad_to 정수, 선택 사항
FFT를 수행할 때 데이터 세그먼트가 패딩되는 포인트 수입니다. 이것은 사용된 데이터 포인트의 수를 지정하는 NFFT 와 다를 수 있습니다 . 스펙트럼의 실제 분해능(분해 가능한 피크 사이의 최소 거리)을 증가시키지 않으면서 플롯에 더 많은 포인트를 제공하여 더 자세한 정보를 제공할 수 있습니다. 이것은 에 대한 호출 의 n
fft매개변수에 해당합니다 . 기본값은 None이며 pad_to 를 NFFT 와 동일하게 설정합니다.- NFFT 정수, 기본값: 256
FFT의 각 블록에서 사용되는 데이터 포인트의 수입니다. 전원 2가 가장 효율적입니다. 제로 패딩을 얻기 위해 사용하면 안 됩니다. 그렇지 않으면 결과의 스케일링이 올바르지 않습니다 . 대신 pad_to 를 사용하십시오.
- detrend {'none', 'mean', 'linear'} 또는 호출 가능, 기본값: 'none'
fft-ing 전에 각 세그먼트에 적용되는 함수로 평균 또는 선형 추세를 제거하도록 설계되었습니다. detrend 매개변수가 벡터인 MATLAB과 달리 Matplotlib에서는 함수입니다.
mlab모듈은 ,detrend_none및detrend_mean를 정의detrend_linear하지만 사용자 지정 함수도 사용할 수 있습니다. 문자열을 사용하여 함수 중 하나를 선택할 수도 있습니다. 'none' callsdetrend_none. '의미' 전화detrend_mean. '선형' 호출detrend_linear.- scale_by_freq 부울, 기본값: 참
결과 밀도 값이 1/Hz 단위로 밀도를 제공하는 스케일링 주파수로 스케일링되어야 하는지 여부입니다. 이렇게 하면 반환된 빈도 값에 대한 통합이 가능합니다. MATLAB 호환성의 경우 기본값은 True입니다.
- noverlap int, 기본값: 0(겹침 없음)
세그먼트 간의 겹침 지점 수입니다.
- 반환 :
- Pxx 1차원 배열
파워 스펙트럼의 값\(P_{xx}\)(진짜 가치)
- 주파수 1차원 배열
Pxx 의 요소에 해당하는 주파수
또한보십시오
specgramspecgram기본 겹침이 다릅니다. 세그먼트 주기도의 평균을 반환하지 않음; 세그먼트의 시간을 반환합니다.magnitude_spectrum크기 스펙트럼을 반환합니다.
csd두 신호 사이의 스펙트럼 밀도를 반환합니다.
참조
Bendat & Piersol -- 무작위 데이터: 분석 및 측정 절차, John Wiley & Sons(1986)
- matplotlib.mlab. specgram ( x , NFFT = None , Fs = None , detrend = None , window = None , noverlap = None , pad_to = None , Sides = None , scale_by_freq = None , mode = None ) [출처] #
스펙트로그램을 계산합니다.
x 에 있는 데이터의 스펙트로그램을 계산하고 플로팅합니다 . 데이터는 NFFT 길이 세그먼트로 분할되고 각 섹션의 스펙트럼이 계산됩니다. 윈도잉 함수 윈도우 는 각 세그먼트에 적용되며, 각 세그먼트의 중첩 정도는 noverlap 으로 지정됩니다 .
- 매개변수 :
- x 배열과 같은
1차원 배열 또는 시퀀스.
- Fs float, 기본값: 2
샘플링 빈도(시간 단위당 샘플)입니다. 시간 단위당 주기로 푸리에 주파수 freqs 를 계산하는 데 사용됩니다 .
- 창 호출 가능 또는 ndarray, 기본값:
window_hanning 길이가 NFFT 인 함수 또는 벡터 . 창 벡터를 생성하려면 , , , , , , 등을 참조하십시오
window_hanning.window_none함수numpy.blackman가numpy.hamming인수numpy.bartlett로scipy.signal전달scipy.signal.get_window되면 데이터 세그먼트를 인수로 가져와 세그먼트의 윈도우 버전을 반환해야 합니다.- {'default', 'onesided', 'twosided'}, 옵션
반환할 스펙트럼의 측면. 'default'는 실제 데이터의 경우 단측이고 복소수 데이터의 경우 양면입니다. '일면'은 단면 스펙트럼의 반환을 강제하고 '양면'은 양면을 강제합니다.
- pad_to 정수, 선택 사항
FFT를 수행할 때 데이터 세그먼트가 패딩되는 포인트 수입니다. 이것은 사용된 데이터 포인트의 수를 지정하는 NFFT 와 다를 수 있습니다 . 스펙트럼의 실제 분해능(분해 가능한 피크 사이의 최소 거리)을 증가시키지 않으면서 플롯에 더 많은 포인트를 제공하여 더 자세한 정보를 제공할 수 있습니다. 이것은 에 대한 호출 의 n
fft매개변수에 해당합니다 . 기본값은 None이며 pad_to 를 NFFT 와 동일하게 설정합니다.- NFFT 정수, 기본값: 256
FFT의 각 블록에서 사용되는 데이터 포인트의 수입니다. 전원 2가 가장 효율적입니다. 제로 패딩을 얻기 위해 사용하면 안 됩니다. 그렇지 않으면 결과의 스케일링이 올바르지 않습니다 . 대신 pad_to 를 사용하십시오.
- detrend {'none', 'mean', 'linear'} 또는 호출 가능, 기본값: 'none'
fft-ing 전에 각 세그먼트에 적용되는 함수로 평균 또는 선형 추세를 제거하도록 설계되었습니다. detrend 매개변수가 벡터인 MATLAB과 달리 Matplotlib에서는 함수입니다.
mlab모듈은 ,detrend_none및detrend_mean를 정의detrend_linear하지만 사용자 지정 함수도 사용할 수 있습니다. 문자열을 사용하여 함수 중 하나를 선택할 수도 있습니다. 'none' callsdetrend_none. '의미' 전화detrend_mean. '선형' 호출detrend_linear.- scale_by_freq 부울, 기본값: 참
결과 밀도 값이 1/Hz 단위로 밀도를 제공하는 스케일링 주파수로 스케일링되어야 하는지 여부입니다. 이렇게 하면 반환된 빈도 값에 대한 통합이 가능합니다. MATLAB 호환성의 경우 기본값은 True입니다.
- noverlap int, 기본값: 128
블록 간의 중첩 지점 수입니다.
- 모드 str, 기본값: 'psd'
- 사용할 스펙트럼 종류:
- 'psd'
전력 스펙트럼 밀도를 반환합니다.
- '복잡한'
복소수 값의 주파수 스펙트럼을 반환합니다.
- '크기'
크기 스펙트럼을 반환합니다.
- '각도'
언래핑하지 않고 위상 스펙트럼을 반환합니다.
- '단계'
언래핑을 사용하여 위상 스펙트럼을 반환합니다.
- 반환 :
- 스펙트럼 배열형
2D 배열, 열은 연속 세그먼트의 주기도입니다.
- 주파수 배열과 같은
1차원 배열, spectrum 의 행에 해당하는 주파수 .
- t 배열형
1-D 배열, 세그먼트의 중간점에 해당하는 시간(예: 스펙트럼 의 열 ).
또한보십시오
psd중복 및 반환 값이 다릅니다.
complex_spectrum유사하지만 복잡한 값의 빈도를 가집니다.
magnitude_spectrum모드 가 '크기' 일 때 유사한 단일 세그먼트 .
angle_spectrum모드 가 '각도'인 경우 단일 세그먼트와 유사합니다 .
phase_spectrum모드 가 '위상' 일 때 단일 세그먼트와 유사합니다 .
메모
detrend 및 scale_by_freq 는 모드 가 'psd'로 설정된 경우에만 적용됩니다 .
- matplotlib.mlab. stride_windows ( x , n , noverlap = None , axis = 0 ) [소스] #
[ Deprecated ] 데이터 중복을 피하기 위해 보폭을 사용하여 길이가 n 인 x 의 모든 창을 단일 배열로 가져옵니다.
경고
출력 배열에 쓰는 것은 안전하지 않습니다. 여러 요소가 동일한 메모리 부분을 가리킬 수 있으므로 하나의 값을 수정하면 다른 값이 변경될 수 있습니다.
- 매개변수 :
- x 1D 배열 또는 시퀀스
데이터를 포함하는 배열 또는 시퀀스.
- 정수 _
각 창의 데이터 포인트 수입니다.
- noverlap int, 기본값: 0(겹침 없음)
인접한 창 사이의 겹침.
- 축 정수
창이 실행되는 축입니다.
메모
버전 3.6부터 사용되지 않습니다.
참조
stackoverflow:Numpy의 1D 배열에 대한 롤링 창? stackoverflow: 효율적인 이동 평균 필터를 위한 보폭 사용
- matplotlib.mlab. window_hanning ( x ) [출처] #
len( x ) 의 Hann(또는 Hann) 윈도우의 x 배를 반환 합니다.
또한보십시오
window_none다른 창 알고리즘.
- matplotlib.mlab. window_none ( x ) [소스] #
창 기능이 없습니다. 단순히 x 를 반환 합니다.
또한보십시오
window_hanning다른 창 알고리즘.