Spec-Zone.ru › Matplotlib 3.8

matplotlib.axes.Axes.psd

Axes.psd(x, NFFT=None, Fs=None, Fc=None, detrend=None, window=None, noverlap=None, pad_to=None, sides=None, scale_by_freq=None, return_line=None, *, data=None, **kwargs)[source]

Построение плотности спектральной мощности.

Плотность спектральной мощности \(P_{xx}\) методом усреднённой периодограммы Велча. Вектор x делится на сегменты длиной NFFT. Каждый сегмент сглаживается функцией detrend и окончивается функцией window. noverlap задаёт длину перекрытия между сегментами. Среднее значение \(|\mathrm{fft}(i)|^2\) каждого сегмента \(i\) используется для вычисления \(P_{xx}\) с масштабированием для коррекции потерь мощности из-за окон.

Если len(x) < NFFT, он будет заполнен нулями до NFFT.

Параметры:
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. Степень двойки наиболее эффективна. Это НЕ должно использоваться для получения нулевого заполнения, иначе масштабирование результата будет неправильным; для этого используйте 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.

noverlapint, по умолчанию: 0 (без перекрытия)

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

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

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

return_linebool, по умолчанию: False

Включать ли объект линии, нарисованной в возвращаемых значениях.

Возвращаемые значения:
PxxОдномерный массив

Значения спектральной плотности \(P_{xx}\) до масштабирования (вещественные значения).

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

Частоты, соответствующие элементам в Pxx.

lineLine2D

Линия, созданная этой функцией. Возвращается только если return_line True.

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

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

x

**kwargs

Ключевые аргументы управляют свойствами Line2D:

Свойство

Описание

agg_filter

функция фильтра, которая принимает массив чисел с плавающей точкой (m, n, 3) и значение dpi, а возвращает массив чисел с плавающей точкой (m, n, 3) и два смещения от нижнего левого угла изображения

alpha

скаляр или None

animated

bool

antialiased или aa

bool

clip_box

BboxBase или None

clip_on

bool

clip_path

Patch или (Path, Transform) или None

color или c

цвет

dash_capstyle

CapStyle или {'butt', 'projecting', 'round'}

dash_joinstyle

JoinStyle или {'miter', 'round', 'bevel'}

dashes

последовательность чисел с плавающей точкой (чернила в/выкл в точках) или (None, None)

data

массив (2, N) или два одномерных массива

drawstyle или ds

{'default', 'steps', 'steps-pre', 'steps-mid', 'steps-post'}, по умолчанию: 'default'

figure

Figure

fillstyle

{'full', 'left', 'right', 'bottom', 'top', 'none'}

gapcolor

цвет или None

gid

строка

in_layout

bool

label

объект

linestyle или ls

{'-', '--', '-.', ':', '', (смещение, последовательность вкл/выкл), ...}

linewidth или lw

число с плавающей точкой

marker

строка стиля маркера, Path или MarkerStyle

markeredgecolor или mec

цвет

markeredgewidth или mew

число с плавающей точкой

markerfacecolor или mfc

цвет

markerfacecoloralt или mfcalt

цвет

markersize или ms

число с плавающей точкой

markevery

None или int или (int, int) или срез или список[int] или число с плавающей точкой или (число с плавающей точкой, число с плавающей точкой) или список[bool]

mouseover

bool

path_effects

список AbstractPathEffect

picker

число с плавающей точкой или вызываемая функция [[Artist, Event], tuple[bool, dict]]

pickradius

число с плавающей точкой

rasterized

bool

sketch_params

(масштаб: число с плавающей точкой, длина: число с плавающей точкой, случайность: число с плавающей точкой)

snap

bool или None

solid_capstyle

CapStyle или {'butt', 'projecting', 'round'}

solid_joinstyle

JoinStyle или {'miter', 'round', 'bevel'}

transform

неизвестно

url

строка

visible

bool

xdata

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

ydata

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

zorder

вещественное число

См. также

specgram

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

magnitude_spectrum

Строит спектр величины.

csd

Строит спектральную плотность между двумя сигналами.

Примечания

Для построения мощность отображается как \(10\log_{10}(P_{xx})\) в децибелах, хотя само Pxx возвращается.

Ссылки

Bendat & Piersol -- Random Data: Analysis and Measurement Procedures, John Wiley & Sons (1986)

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

Плотность спектральной мощности (PSD)

Плотность спектральной мощности (PSD)

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

Spec-Zone.ru

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