matplotlib.axes.Axes.csd
-
Axes.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) -
Построение взаимной спектральной плотности.
Вызов функции:
csd(x, y, 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 и y разбиваются на сегменты длиной NFFT. Каждый сегмент обрабатывается с помощью функции detrend и оконной функции window. noverlap задаёт длину перекрытия между сегментами. Произведение прямых преобразований Фурье для x и y усредняется по каждому сегменту для вычисления
, с учётом потери мощности из-за применения окна.
Если len(x) < NFFT или len(y) < NFFT, они будут дополнены нулями до NFFT.
Параметры: x, y : одномерные массивы или последовательности
Массивы или последовательности, содержащие данные
Fs : скаляр
Частота дискретизации (образцов в единицу времени). Используется для расчёта частот Фурье, freqs, в циклах за единицу времени. Значение по умолчанию равно 2.
window : вызываемая функция или массив
Функция или вектор длиной 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 : целое число
Количество точек, до которых дополняется сегмент данных при выполнении БПФ. Может отличаться от NFFT, которое определяет количество точек данных, используемых. Несмотря на то, что это не увеличивает фактическое разрешение спектра (минимальное расстояние между разрешимыми пиками), это может обеспечить больше точек на графике, позволяя получить больше деталей. Соответствует параметру n в вызове fft(). По умолчанию None, что устанавливает pad_to равным NFFT
NFFT : целое число
Количество точек данных, используемых в каждом блоке для БПФ. Мощность 2 является наиболее эффективной. Значение по умолчанию равно 256. Не следует использовать для получения нулевого заполнения, иначе масштабирование результата будет некорректным. Используйте pad_to для этой цели.
detrend : {‘default’, ‘constant’, ‘mean’, ‘linear’, ‘none’} или вызываемая функция
Функция, применяемая к каждому сегменту перед БПФ, предназначенная для удаления среднего или линейного тренда. В отличие от MATLAB, где параметр detrend — это вектор, в matplotlib он — функция. Модуль
pylabопределяетdetrend_none(),detrend_mean(), иdetrend_linear(), но вы также можете использовать пользовательскую функцию. Вы также можете использовать строку, чтобы выбрать одну из функций. ‘default’, ‘constant’, и ‘mean’ вызываютdetrend_mean(). ‘linear’ вызываетdetrend_linear(). ‘none’ вызываетdetrend_none().scale_by_freq : логическое значение, необязательно
Указывает, следует ли масштабировать полученные значения плотности с учётом масштабирующей частоты, что даёт плотность в единицах Hz^-1. Это позволяет интегрировать по возвращаемым частотным значениям. По умолчанию True для совместимости с MATLAB.
noverlap : целое число
Количество перекрывающихся точек между сегментами. Значение по умолчанию равно 0 (нет перекрытия).
Fc : целое число
Центральная частота x (по умолчанию 0), которая смещает области x графика, чтобы отразить диапазон частот, используемый при получении сигнала, а затем его фильтрации и понижения частоты до основной полосы.
return_line : bool
Включает ли возвращаемые значения объект линии, нарисованный этой функцией. По умолчанию False.
Возвращаемые значения: Pxy : одномерный массив
Значения для взаимного спектра
P_{xy}до масштабирования (комплексные значения)freqs : одномерный массив
Частоты, соответствующие элементам в Pxy
line : экземпляр
Line2DЛиния, созданная этой функцией. Возвращается только если return_line равно True.
Другие параметры:
**kwargs :
Ключевые аргументы управляют свойствами
Line2D:Свойство Описание agg_filterнеизвестно alphaвещественное число (от 0.0 — прозрачный до 1.0 — непрозрачный) animated[True | False] antialiasedили aa[True | False] clip_boxэкземпляр matplotlib.transforms.Bboxclip_on[True | False] 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экземпляр matplotlib.figure.Figurefillstyle[‘full’ | ‘left’ | ‘right’ | ‘bottom’ | ‘top’ | ‘none’] gidстрока-идентификатор labelстрока или что-либо, что можно распечатать с помощью преобразования ‘%s’. 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_effectsнеизвестно pickerвещественное число расстояния в точках или вызываемая функция выбора fn(artist, event)pickradiusвещественное число расстояния в точках rasterized[True | False | None] sketch_paramsнеизвестно snapнеизвестно solid_capstyle[‘butt’ | ‘round’ | ‘projecting’] solid_joinstyle[‘miter’ | ‘round’ | ‘bevel’] transformэкземпляр matplotlib.transforms.Transformurlстрока URL visible[True | False] xdataодномерный массив ydataодномерный массив zorderлюбое число
См. также
Примечания
Для построения графиков мощность отображается как
в децибелах, хотя возвращается сама
P_{xy}.Ссылки
Бендат и Пирсол – Случайные данные: анализ и методы измерения, John Wiley & Sons (1986)
© 2012–2017 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
http://matplotlib.org/2.1.0/api/_as_gen/matplotlib.axes.Axes.csd.html