Spec-Zone.ru › Matplotlib

matplotlib.axes.Axes.specgram

Axes.specgram(x, NFFT=None, Fs=None, Fc=None, detrend=None, window=None, noverlap=None, cmap=None, xextent=None, pad_to=None, sides=None, scale_by_freq=None, mode=None, scale=None, vmin=None, vmax=None, *, data=None, **kwargs)[source]

Построение спектрограммы.

Вычисление и построение спектрограммы данных в x. Данные разбиваются на сегменты длиной NFFT, и вычисляется спектр каждого сегмента. Функция оконного преобразования window применяется к каждому сегменту, а количество перекрытия каждого сегмента задаётся параметром noverlap. Спектрограмма строится в виде цветовой карты (используя imshow).

Параметры:
xОдномерный массив или последовательность

Массив или последовательность, содержащая данные.

Fsfloat, по умолчанию: 2

Частота дискретизации (образцы в единицу времени). Она используется для вычисления частот Фурье, freqs, в циклах в единицу времени.

windowвызываемая функция или массив, по умолчанию: window_hanning

Функция или вектор длиной NFFT. Для создания векторов окон см. window_hanning, window_none, numpy.blackman, numpy.hamming, numpy.bartlett, scipy.signal, scipy.signal.get_window и т. д. Если в качестве аргумента передаётся функция, она должна принимать сегмент данных и возвращать оконный вариант этого сегмента.

sides{'default', 'onesided', 'twosided'}, необязательно

Какие стороны спектра возвращать. 'default' — односторонняя для вещественных данных и двухсторонняя для комплексных данных. 'onesided' принудительно возвращает односторонний спектр, а 'twosided' — двухсторонний.

pad_toint, необязательно

Количество точек, до которых дополняется сегмент данных при выполнении FFT. Это может отличаться от NFFT, которое задаёт количество точек данных, используемых. Хотя это не увеличивает фактическое разрешение спектра (минимальное расстояние между разрешаемыми пиками), это может обеспечить больше точек на графике, что позволит получить более подробные данные. Соответствует параметру n в вызове fft. По умолчанию None, что устанавливает pad_to равным NFFT

NFFTint, по умолчанию: 256

Количество точек данных, используемых в каждом блоке для FFT. Степень 2 является наиболее эффективной. Это НЕ должно использоваться для получения нулевого заполнения, или масштабирование результата будет некорректным; используйте pad_to для этого вместо этого.

detrend{'none', 'mean', 'linear'} или вызываемая функция, по умолчанию: 'none'

Функция, применяемая к каждому сегменту перед fft, предназначенная для удаления среднего значения или линейной тенденции. В отличие от MATLAB, где параметр detrend — это вектор, в Matplotlib это функция. Модуль mlab определяет detrend_none, detrend_mean и detrend_linear, но вы также можете использовать пользовательскую функцию. Вы также можете использовать строку для выбора одной из функций: 'none' вызывает detrend_none. 'mean' вызывает detrend_mean. 'linear' вызывает detrend_linear.

scale_by_freqbool, по умолчанию: True

Нужно ли масштабировать полученные значения плотности по масштабирующей частоте, что даёт плотность в единицах 1/Гц. Это позволяет интегрировать возвращённые частотные значения. По умолчанию True для совместимости с MATLAB.

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

Какой тип спектра использовать. По умолчанию 'psd', который берёт спектральную плотность мощности. 'magnitude' возвращает спектр по величине. 'angle' возвращает спектр фазы без развёртывания. 'phase' возвращает спектр фазы с развёртыванием.

noverlapint, по умолчанию: 128

Количество перекрывающихся точек между блоками.

scale{'default', 'linear', 'dB'}

Масштабирование значений в spec. 'linear' — без масштабирования. 'dB' возвращает значения в масштабе дБ. Когда mode — 'psd', это дБ мощности (10 * log10). В противном случае это дБ амплитуды (20 * log10). 'default' — 'dB', если mode — 'psd' или 'magnitude', и 'linear' в противном случае. Должно быть 'linear', если mode — 'angle' или 'phase'.

Fcint, по умолчанию: 0

Центральная частота x, которая смещает x-диапазоны графика, чтобы отразить частотный диапазон, используемый при получении сигнала, а затем его фильтрации и дискретизации до базовой полосы.

cmapColormap, по умолчанию: rcParams["image.cmap"] (по умолчанию: 'viridis')
xextentNone или (xmin, xmax)

Диапазон изображения по оси x. По умолчанию устанавливает xmin в левую границу первого бина (столбец spectrum) и xmax в правую границу последнего бина. Обратите внимание, что для noverlap>0 ширина бинов меньше, чем у сегментов.

dataиндексируемый объект, необязательно

Если задан, следующие параметры также принимают строку s, которая интерпретируется как data[s] (если это не вызывает исключения):

x

**kwargs

Дополнительные ключевые аргументы передаются в imshow, который создаёт изображение specgram. Ключевой аргумент origin не поддерживается.

Возвращаемое значение:
spectrumдвумерный массив

Столбцы — это периодограммы последовательных сегментов.

freqsодномерный массив

Частоты, соответствующие строкам в spectrum.

tодномерный массив

Время, соответствующее серединам сегментов (т. е. столбцам в spectrum).

imAxesImage

Изображение, созданное imshow, содержащее спектрограмму.

См. также

psd

Отличается по умолчанию перекрытием; возвращает среднее значение периодограмм сегментов; не возвращает времена; и генерирует линейный график вместо цветовой карты.

magnitude_spectrum

Один спектр, аналогично одному сегменту, когда mode — 'magnitude'. Строит линию вместо цветовой карты.

angle_spectrum

Один спектр, аналогично одному сегменту, когда mode — 'angle'. Строит линию вместо цветовой карты.

phase_spectrum

Один спектр, аналогично одному сегменту, когда mode — 'phase'. Строит линию вместо цветовой карты.

Примечания

Параметры detrend и scale_by_freq применяются только тогда, когда mode установлен в 'psd'.

Примеры использования matplotlib.axes.Axes.specgram

Спектрограмма

Спектрограмма

© 2012–2023 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.specgram.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API