matplotlib.axes.Axes.csd
-
Axes.csd(self, 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, y : 1-D arrays or sequences -
Массивы или последовательности, содержащие данные.
-
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 : int -
Количество точек, до которого сегмент данных дополняется нулями при выполнении преобразования Фурье. Это может отличаться от NFFT, которое определяет количество точек данных, используемых. Хотя это не увеличивает фактическое разрешение спектра (минимальное расстояние между разрешаемыми пиками), это может дать больше точек в графике, позволяя получить больше деталей. Это соответствует параметру n в вызове fft(). По умолчанию None, что устанавливает pad_to равным NFFT.
-
NFFT : int -
Количество точек данных, используемых в каждом блоке для преобразования Фурье. Степень 2 наиболее эффективна. Значение по умолчанию равно 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_freq : bool, optional -
Указывает, следует ли масштабировать возвращаемые значения плотности с помощью масштабирующей частоты, что дает плотность в единицах Hz^-1. Это позволяет интегрировать по возвращаемым частотным значениям. По умолчанию True для совместимости с MATLAB.
-
noverlap : int -
Количество перекрывающихся точек между сегментами. Значение по умолчанию равно 0 (нет перекрытия).
-
Fc : int -
Центральная частота x (по умолчанию 0), которая смещает области x графика для отражения диапазона частот, используемых при получении сигнала, а затем его фильтрации и дискретизации до базовой полосы.
-
return_line : bool -
Включить ли объект линии, нарисованный в возвращаемых значениях. По умолчанию False.
Возвращает: -
Pxy : 1-D array -
Значения для взаимного спектра
P_{xy}до масштабирования (комплексные значения). -
freqs : 1-D array -
Частоты, соответствующие элементам в Pxy.
-
line : a Line2D instance -
Линия, созданная этой функцией. Возвращается только если return_line равно True.
-
Другие параметры: - **kwargs
-
Ключевые аргументы управляют свойствами
Line2D:Свойство Описание agg_filterфункция фильтра, которая принимает (m, n, 3) массив чисел с плавающей точкой и значение dpi и возвращает (m, n, 3) массив alphaчисло с плавающей точкой animatedлогическое значение antialiasedили aaлогическое значение clip_boxBboxclip_onлогическое значение clip_path[( Path,Transform) |Patch| None]colorили cцвет containsвызываемый объект dash_capstyle{'butt', 'round', 'projecting'} dash_joinstyle{'miter', 'round', 'bevel'} dashesпоследовательность чисел с плавающей точкой (чернила включены/выключены в точках) или (None, None) drawstyleили ds{'default', 'steps', 'steps-pre', 'steps-mid', 'steps-post'}, по умолчанию: 'default' figureFigurefillstyle{'full', 'left', 'right', 'bottom', 'top', 'none'} gidстрока in_layoutлогическое значение labelобъект linestyleили ls{'-', '--', '-.', ':', '', (смещение, последовательность включения/выключения), ...} linewidthили lwчисло с плавающей точкой markerстиль маркера markeredgecolorили mecцвет markeredgewidthили mewчисло с плавающей точкой markerfacecolorили mfcцвет markerfacecoloraltили mfcaltцвет markersizeили msчисло с плавающей точкой markeveryNone или int или (int, int) или срез или список [int] или число с плавающей точкой или (число с плавающей точкой, число с плавающей точкой) path_effectsAbstractPathEffectpickerчисло с плавающей точкой или вызываемый объект [[Художник, Событие], Кортеж[логическое значение, словарь]] pickradiusчисло с плавающей точкой rasterizedлогическое значение или None sketch_params(масштаб: число с плавающей точкой, длина: число с плавающей точкой, случайность: число с плавающей точкой) snapлогическое значение или None solid_capstyle{'butt', 'round', 'projecting'} solid_joinstyle{'miter', 'round', 'bevel'} transformmatplotlib.transforms.Transformurlстрока visibleлогическое значение xdataодномерный массив ydataодномерный массив zorderчисло с плавающей точкой
Примечания
Для построения графиков мощность отображается как \(10\log_{10}(P_{xy})\) в децибелах, хотя
P_{xy}возвращается само по себе.Ссылки
Бендат и Пирсол — Случайные данные: анализ и методы измерения, John Wiley & Sons (1986)
Примечание
Помимо указанных выше аргументов, эта функция может принимать аргумент данные. Если такой аргумент данные задан, следующие аргументы заменяются на данные[<арг>]:
- Все аргументы с именами: 'x', 'y'.
Объекты, передаваемые как данные, должны поддерживать доступ к элементам (
data[<arg>]) и проверку на членство (<arg> in data).
© 2012–2018 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.1.1/api/_as_gen/matplotlib.axes.Axes.csd.html