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] -
Построение плотности спектральной мощности.
Вызов:
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 -
Количество точек, до которых дополняются нулями сегменты данных при выполнении БПФ. Это может отличаться от NFFT, которое задаёт количество точек данных, используемых. Хотя это не увеличивает фактическое разрешение спектра (минимальное расстояние между разрешимыми пиками), это может дать больше точек на графике, позволяя получить больше деталей. Это соответствует параметру n в вызове fft(). Значение по умолчанию — None, что устанавливает pad_to равным NFFT.
-
NFFT : integer -
Количество точек данных, используемых в каждом блоке для БПФ. Мощность 2 наиболее эффективна. Значение по умолчанию — 256. Это не следует использовать для получения нулевых дополнений, иначе масштабирование результата будет неверным. Для этого используйте pad_to.
-
detrend : {'default', 'constant', 'mean', 'linear', 'none'} or callable -
Функция, применяемая к каждому сегменту перед БПФ, предназначенная для удаления среднего значения или линейной тенденции. В отличие от 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.
-
Другие параметры: - **kwargs :
-
Параметры ключевого слова управляют свойствами
Line2D:Свойство Описание agg_filterфункция фильтра, которая принимает массив чисел с плавающей точкой (m, n, 3) и значение dpi и возвращает массив чисел с плавающей точкой (m, n, 3) alphaвещественное число (от 0,0 — прозрачный до 1,0 — непрозрачный) animatedбулево значение antialiasedили aaбулево значение clip_boxэкземпляр Bboxclip_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экземпляр Figurefillstyle['full' | 'left' | 'right' | 'bottom' | 'top' | 'none'] gidстрока-идентификатор labelобъект linestyleили ls['solid' | 'dashed', 'dashdot', 'dotted' | (смещение, последовательность включения/выключения тире) | '-'|'--'|'-.'|':'|'None'|' '|'']linewidthили lwвещественное значение в пунктах markerA valid marker stylemarkeredgecolorили mecлюбой цвет matplotlib markeredgewidthили mewвещественное значение в пунктах markerfacecolorили mfcлюбой цвет matplotlib markerfacecoloraltили mfcaltлюбой цвет matplotlib markersizeили msвещественное число markevery[None | целое число | кортеж длиной 2 из целых чисел | срез | список/массив целых чисел | вещественное число | кортеж длиной 2 из вещественных чисел] path_effectsAbstractPathEffectpickerрасстояние в пунктах или вызываемая функция для выбора fn(artist, event)pickradiusрасстояние в пунктах rasterizedбулево значение или None sketch_params(масштаб: вещественное число, длина: вещественное число, случайность: вещественное число) snapбулево значение или None solid_capstyle['butt' | 'round' | 'projecting'] solid_joinstyle['miter' | 'round' | 'bevel'] transformэкземпляр matplotlib.transforms.Transformurlстрока url visibleбулево значение xdataмассив 1D ydataмассив 1D zorderвещественное число
См. также
-
specgram() -
specgram()отличается значением по умолчанию для перекрытия; не возвращает среднее значение периодограмм сегмента; возвращает временные метки сегментов; и строит цветовой карту вместо линии. -
magnitude_spectrum() -
magnitude_spectrum()строит спектр по величине. -
csd() -
csd()строит спектральную плотность между двумя сигналами.
Примечания
Для построения графиков мощность отображается как
для децибел, хотя само Pxx возвращается.
Ссылки
Bendat & Piersol -- Случайные данные: методы анализа и измерения, John Wiley & Sons (1986)
Примечание
Помимо вышеописанных аргументов, эта функция может принимать аргумент data. Если такой аргумент data задан, следующие аргументы заменяются на data[<arg>]:
- Все аргументы с именами: 'x'.
-
© 2012–2018 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/2.2.3/api/_as_gen/matplotlib.axes.Axes.psd.html