Spec-Zone.ru › Matplotlib 2.2

matplotlib.pyplot.psd

matplotlib.pyplot.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, hold=None, data=None, **kwargs) [source]

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

Вызов функции:

psd(x, NFFT=256, Fs=2, Fc=0, detrend=mlab.detrend_none,
    window=mlab.window_hanning, noverlap=0, pad_to=None,
    sides='default', scale_by_freq=None, return_line=None, **kwargs)

Плотность спектральной мощности методом усреднённой периодограммы Уэлча. Вектор x делится на сегменты длиной NFFT. Каждый сегмент обрабатывается функцией detrend и окончивается функцией window. noverlap задаёт длину перекрытия между сегментами. каждого сегмента усредняются для вычисления , с масштабированием, компенсирующим потерю мощности из-за окон.

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

Параметры:
x : 1-D array or sequence

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

Fs : scalar

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

window : callable or ndarray

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

sides : [ 'default' | 'onesided' | 'twosided' ]

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

pad_to : integer

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

NFFT : integer

Количество точек данных, используемых в каждом блоке для FFT. Мощность 2 наиболее эффективна. Значение по умолчанию — 256. Не следует использовать для получения нулевого заполнения, иначе масштабирование результата будет неверным. Используйте pad_to для этого.

detrend : {'default', 'constant', 'mean', 'linear', 'none'} or callable

Функция, применяемая к каждому сегменту перед вычислением FFT, предназначенная для удаления среднего значения или линейной тенденции. В отличие от MATLAB, где параметр detrend является вектором, в matplotlib он является функцией. Модуль pylab определяет detrend_none(), detrend_mean(), и detrend_linear(), но вы можете использовать и пользовательскую функцию. Также можно использовать строку для выбора одной из функций. 'default', 'constant', и 'mean' вызывают detrend_mean(). 'linear' вызывает detrend_linear(). 'none' вызывает detrend_none().

scale_by_freq : boolean, optional

Указывает, следует ли масштабировать значения плотности с учётом частоты масштабирования, что даёт плотность в единицах Hz^-1. Это позволяет интегрировать по возвращаемым частотным значениям. По умолчанию True для совместимости с MATLAB.

noverlap : integer

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

Fc : integer

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

return_line : bool

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

Возвращаемые значения:
Pxx : 1-D array

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

freqs : 1-D array

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

line : a Line2D instance

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

END_OF_DOCUMENT_MARKER
Другие параметры:
**kwargs :

Параметры ключевых слов управляют свойствами Line2D:

Свойство Описание
agg_filter функция фильтра, которая принимает массив чисел с плавающей точкой (m, n, 3) и значение dpi и возвращает массив (m, n, 3)
alpha вещественное число (от 0,0 — прозрачный до 1,0 — непрозрачный)
animated булево значение
antialiased или aa булево значение
clip_box экземпляр Bbox
clip_on булево значение
clip_path [(Path, Transform) | Patch | None]
color или c любой цвет matplotlib
contains вызываемая функция
dash_capstyle ['butt' | 'round' | 'projecting']
dash_joinstyle ['miter' | 'round' | 'bevel']
dashes последовательность включения/выключения чернил в точках
drawstyle ['default' | 'steps' | 'steps-pre' | 'steps-mid' | 'steps-post']
figure экземпляр Figure
fillstyle ['full' | 'left' | 'right' | 'bottom' | 'top' | 'none']
gid строка идентификатора
label объект
linestyle или ls ['solid' | 'dashed', 'dashdot', 'dotted' | (смещение, последовательность включения-выключения тире) | '-' | '--' | '-.' | ':' | 'None' | ' ' | '']
linewidth или lw вещественное значение в точках
marker A valid marker style
markeredgecolor или mec любой цвет matplotlib
markeredgewidth или mew вещественное значение в точках
markerfacecolor или mfc любой цвет matplotlib
markerfacecoloralt или mfcalt любой цвет matplotlib
markersize или ms вещественное число
markevery [None | целое число | кортеж длиной 2 из целых чисел | срез | список/массив целых чисел | число с плавающей точкой | кортеж длиной 2 из чисел с плавающей точкой]
path_effects AbstractPathEffect
picker расстояние в точках или вызываемая функция выбора fn(artist, event)
pickradius расстояние в точках
rasterized булево значение или None
sketch_params (масштаб: число, длина: число, случайность: число)
snap булево значение или None
solid_capstyle ['butt' | 'round' | 'projecting']
solid_joinstyle ['miter' | 'round' | 'bevel']
transform экземпляр matplotlib.transforms.Transform
url строка url
visible булево значение
xdata одномерный массив
ydata одномерный массив
zorder вещественное число

См. также

specgram()
specgram() отличается по значению перекрытия по умолчанию; не возвращает среднее значение периодограмм сегмента; возвращает время сегментов; и строит карту цветов вместо линии.
magnitude_spectrum()
magnitude_spectrum() строит спектр амплитуды.
csd()
csd() строит спектральную плотность между двумя сигналами.

Примечания

Для построения графиков мощность отображается в виде (децибелы), хотя Pxx возвращается непосредственно.

Ссылки

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

Примечание

В дополнение к описанным выше аргументам, эта функция может принимать ключевой аргумент data. Если такой аргумент data задан, следующие аргументы заменяются на data[<arg>]:

  • Все аргументы с следующими именами: 'x'.

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

../../_images/sphx_glr_psd_demo_thumb.png

Демонстрация PSD

© 2012–2018 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/2.2.3/api/_as_gen/matplotlib.pyplot.psd.html

Spec-Zone.ru

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