matplotlib.pyplot.csd
-
matplotlib.pyplot.csd(x, y, 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_{xy}\) методом усреднённой периодограммы Вельша. Векторы x и y делятся на сегменты длиной NFFT. Каждый сегмент обрабатывается функцией detrend и окончивается функцией window. noverlap задаёт длину перекрытия между сегментами. Произведение прямых преобразований Фурье x и y усредняется по каждому сегменту для вычисления \(P_{xy}\) со масштабированием для компенсации потерь мощности из-за оконёвки.
Если len(x) < NFFT или len(y) < NFFT, они будут дополнены нулями до NFFT.
Параметры: -
x, y1-D arrays or sequences -
Массивы или последовательности, содержащие данные.
-
Fsfloat, default: 2 -
Частота дискретизации (образцов в единицу времени). Используется для вычисления частот Фурье, freqs, в циклах в единицу времени.
-
windowcallable or ndarray, default: window_hanning -
Функция или вектор длины NFFT. Для создания векторов окон см.
window_hanning,window_none,numpy.blackman,numpy.hamming,numpy.bartlett,scipy.signal,scipy.signal.get_windowи т.д. Если в качестве аргумента передаётся функция, она должна принимать сегмент данных и возвращать оконченную версию сегмента. -
sides{'default', 'onesided', 'twosided'}, optional -
Какие стороны спектра возвращать. 'default' — односторонняя для вещественных данных и двусторонняя для комплексных данных. 'onesided' принудительно возвращает односторонний спектр, а 'twosided' — двусторонний.
-
pad_toint, optional -
Количество точек, до которого дополняется сегмент данных при выполнении БПФ. Может отличаться от NFFT, которое определяет количество точек данных, используемых. Хотя это не увеличивает фактическое разрешение спектра (минимальное расстояние между разрешаемыми пиками), это может обеспечить больше точек на графике, позволяя получить более детальную информацию. Соответствует параметру n в вызове fft(). По умолчанию None, что устанавливает pad_to равным NFFT
-
NFFTint, default: 256 -
Количество точек данных, используемых в каждом блоке для БПФ. Степень двойки наиболее эффективна. Это не должно использоваться для нулевого заполнения, иначе масштабирование результата будет неверным; используйте pad_to для этого вместо этого.
-
detrend{'none', 'mean', 'linear'} or callable, default 'none' -
Функция, применяемая к каждому сегменту перед выполнением БПФ, предназначенная для удаления среднего значения или линейной тенденции. В отличие от MATLAB, где параметр detrend является вектором, в Matplotlib это функция. Модуль
mlabопределяетdetrend_none,detrend_meanиdetrend_linear, но вы можете использовать и пользовательскую функцию. Вы также можете использовать строку, чтобы выбрать одну из функций: 'none' вызываетdetrend_none. 'mean' вызываетdetrend_mean. 'linear' вызываетdetrend_linear. -
scale_by_freqbool, default: True -
Нужно ли масштабировать полученные значения плотности с частотой масштабирования, что даёт плотность в единицах Hz^-1. Это позволяет интегрировать по возвращаемым значениям частоты. По умолчанию True для совместимости с MATLAB.
-
noverlapint, default: 0 (no overlap) -
Количество перекрывающихся точек между сегментами.
-
Fcint, default: 0 -
Центральная частота x, смещающая область x графика, чтобы отразить диапазон частот, используемых при получении сигнала, а затем его фильтрации и дискретизации до базовой полосы.
-
return_linebool, default: False -
Включать ли объект линии, нарисованный в возвращаемых значениях.
Возвращаемые значения: -
Pxy1-D array -
Значения кросс-спектра \(P_{xy}\) до масштабирования (комплексные).
-
freqs1-D array -
Частоты, соответствующие элементам в Pxy.
-
lineLine2D -
Линия, созданная этой функцией. Возвращается только если return_line равно True.
-
Другие параметры: - **kwargs
-
Ключевые аргументы управляют свойствами
Line2D:Свойство Описание agg_filterфункция фильтра, которая принимает массив float (m, n, 3) и значение dpi и возвращает массив (m, n, 3) alphafloat или None animatedbool antialiasedили aabool clip_boxBboxclip_onbool clip_pathОбъект Patch или (Path, Transform) или None colorили cцвет containsнеизвестно dash_capstyle{'butt', 'round', 'projecting'} dash_joinstyle{'miter', 'round', 'bevel'} dashesпоследовательность чисел с плавающей точкой (чернила включения/выключения в пунктах) или (None, None) dataмассив (2, N) или два одномерных массива drawstyleили ds{'default', 'steps', 'steps-pre', 'steps-mid', 'steps-post'}, по умолчанию: 'default' figureFigurefillstyle{'full', 'left', 'right', 'bottom', 'top', 'none'} gidстрока in_layoutbool labelобъект linestyleили ls{'-', '--', '-.', ':', '', (смещение, последовательность включения/выключения), ...} linewidthили lwчисло с плавающей точкой markerстрока стиля маркера, PathилиMarkerStylemarkeredgecolorили mecцвет markeredgewidthили mewчисло с плавающей точкой markerfacecolorили mfcцвет markerfacecoloraltили mfcaltцвет markersizeили msчисло с плавающей точкой markeveryNone или int или (int, int) или срез или список [int] или число с плавающей точкой или (число с плавающей точкой, число с плавающей точкой) или список [bool] path_effectsAbstractPathEffectpickerнеизвестно pickradiusчисло с плавающей точкой rasterizedbool или None sketch_params(масштаб: число с плавающей точкой, длина: число с плавающей точкой, случайность: число с плавающей точкой) snapbool или None solid_capstyle{'butt', 'round', 'projecting'} solid_joinstyle{'miter', 'round', 'bevel'} transformmatplotlib.transforms.Transformurlстрока visiblebool xdataодномерный массив ydataодномерный массив zorderчисло с плавающей точкой
См. также
-
psd - эквивалентно установке
y = x.
Примечания
Для построения графиков мощность выводится как \(10 \log_{10}(P_{xy})\) в децибелах, хотя сам \(P_{xy}\) возвращается.
Ссылки
Bendat & Piersol -- Random Data: Analysis and Measurement Procedures, John Wiley & Sons (1986)
Примечание
В дополнение к описанным выше аргументам, эта функция может принимать ключевой аргумент data. Если такой аргумент data задан, следующие аргументы также могут быть строками
s, которые интерпретируются какdata[s](если это не вызывает исключение): x, y.Объекты, переданные в качестве data, должны поддерживать доступ к элементам (
data[s]) и проверку на вхождение (s in data).
Примеры использования matplotlib.pyplot.csd
© 2012–2018 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.3.3/api/_as_gen/matplotlib.pyplot.csd.html