matplotlib.pyplot.specgram #
- matplotlib.pyplot. specgram ( x , NFFT = 없음 , Fs = 없음 , Fc = 없음 , detrend = 없음 , window = 없음 , noverlap = 없음 , cmap = 없음 , xextent = 없음 , pad_to = 없음 , Sides = 없음 , scale_by_freq = 없음 , 모드 = 없음, 스케일 = 없음 , vmin = 없음 , vmax = 없음 , * , 데이터 = 없음 , ** kwargs ) [출처] #
스펙트로그램을 플로팅합니다.
x 에 있는 데이터의 스펙트로그램을 계산하고 플로팅합니다 . 데이터는 NFFT 길이 세그먼트로 분할되고 각 섹션의 스펙트럼이 계산됩니다. 윈도잉 함수 윈도우 는 각 세그먼트에 적용되며, 각 세그먼트의 중첩 정도는 noverlap 으로 지정됩니다 . 스펙트로그램은 컬러맵으로 표시됩니다(imshow 사용).
- 매개변수 :
- 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입니다.
- 모드 {'default', 'psd', '크기', '각도', '위상'}
사용할 스펙트럼의 종류. 기본값은 'psd'이며 전력 스펙트럼 밀도를 사용합니다. '크기'는 크기 스펙트럼을 반환합니다. 'angle'은 언래핑 없이 위상 스펙트럼을 반환합니다. '위상'은 언래핑된 위상 스펙트럼을 반환합니다.
- noverlap int, 기본값: 128
블록 간의 중첩 지점 수입니다.
- 스케일 {'default', 'linear', 'dB'}
spec 값의 스케일링 . '선형'은 스케일링이 없습니다. 'dB'는 dB 스케일의 값을 반환합니다. 모드 가 'psd'인 경우 이는 dB 전력(10 * log10)입니다. 그렇지 않으면 dB 진폭(20 * log10)입니다. 모드 가 'psd' 또는 'magnitude' 이면 'default'는 'dB' 이고 그렇지 않으면 'linear'입니다. 모드 가 '각도' 또는 '위상' 인 경우 '선형'이어야 합니다 .
- Fc int, 기본값: 0
x 의 중심 주파수 는 신호를 수집한 다음 필터링하고 베이스밴드로 다운샘플링할 때 사용되는 주파수 범위를 반영하기 위해 플롯의 x 범위를 상쇄합니다.
- cmap
Colormap
, 기본값:rcParams["image.cmap"]
(기본값:'viridis'
) - xextent 없음 또는 (xmin, xmax)
x축을 따른 이미지 범위입니다. 기본값은 xmin 을 첫 번째 bin( 스펙트럼 열)의 왼쪽 경계로 설정하고 xmax 를 마지막 bin의 오른쪽 경계로 설정합니다. noverlap >0 의 경우 빈의 너비는 세그먼트의 너비보다 작습니다.
- 데이터 인덱싱 가능 개체, 선택 사항
주어진 경우, 다음 매개변수는 문자열도 허용하며
s
, 이는 다음과 같이 해석됩니다data[s]
(예외가 발생하지 않는 한).엑스
- **kwargs
imshow
specgram 이미지를 만드는 추가 키워드 인수가 전달됩니다 . origin 키워드 인수는 지원되지 않습니다.
- 반환 :
- 스펙트럼 2D 배열
열은 연속 세그먼트의 주기도입니다.
- 주파수 1차원 배열
스펙트럼 의 행에 해당하는 주파수 입니다.
- t 1차원 배열
세그먼트의 중간점에 해당하는 시간(즉, 스펙트럼 의 열 ).
- 나는
AxesImage
스펙트로그램을 포함하는 imshow에 의해 생성된 이미지.
또한보십시오
psd
기본 겹침이 다릅니다. 세그먼트 주기도의 평균을 반환할 때; 돌아오지 않는 시간에; 그리고 컬러맵 대신 라인 플롯을 생성할 때.
magnitude_spectrum
모드 가 '크기' 일 때 단일 세그먼트를 갖는 것과 유사한 단일 스펙트럼 . 컬러맵 대신 선을 그립니다.
angle_spectrum
모드 가 '각도' 일 때 단일 세그먼트를 갖는 것과 유사한 단일 스펙트럼 . 컬러맵 대신 선을 그립니다.
phase_spectrum
모드 가 '위상' 일 때 단일 세그먼트를 갖는 것과 유사한 단일 스펙트럼 . 컬러맵 대신 선을 그립니다.
메모
파라미터 detrend 및 scale_by_freq 는 모드 가 'psd'로 설정된 경우에만 적용됩니다 .