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 -
Массивы или последовательности, содержащие данные.
-
Fsscalar -
Частота дискретизации (образцов в единицу времени). Она используется для вычисления частот Фурье, freqs, в циклах на единицу времени. Значение по умолчанию равно 2.
-
windowcallable 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_toint -
Количество точек, до которых дополняется сегмент данных нулями при выполнении преобразования Фурье. Это может отличаться от NFFT, которое определяет количество точек данных, используемых. Хотя это не увеличивает фактическое разрешение спектра (минимальное расстояние между разрешимыми пиками), это может дать больше точек на графике, что позволит отобразить больше деталей. Это соответствует параметру n в вызове fft(). По умолчанию None, что устанавливает pad_to равным NFFT
-
NFFTint -
Количество точек данных, используемых в каждом блоке для преобразования Фурье. Мощность 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_freqbool, optional -
Указывает, нужно ли масштабировать значения полученной плотности с частотой масштабирования, что даёт плотность в единицах Hz^-1. Это позволяет интегрировать возвращаемые значения частоты. По умолчанию True для совместимости с MATLAB.
-
noverlapint -
Количество перекрывающихся точек между сегментами. Значение по умолчанию равно 0 (без перекрытия).
-
Fcint -
Центральная частота x (по умолчанию 0), которая смещает области x графика для отражения частотного диапазона, используемого при получении сигнала, затем его фильтрации и сэмплировании до базовой полосы.
-
return_linebool -
Включать ли объект линии, нарисованный на графике, в возвращаемые значения. По умолчанию 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_pathPatch или (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стиль маркера markeredgecolorили mecцвет markeredgewidthили mewчисло с плавающей точкой markerfacecolorили mfcцвет markerfacecoloraltили mfcaltцвет markersizeили msчисло с плавающей точкой markeveryNone или int или (int, int) или срез или список [int] или float или (float, float) path_effectsAbstractPathEffectpickerчисло с плавающей точкой или вызываемая функция [[Artist, Event], Tuple[bool, dict]] pickradiusчисло с плавающей точкой rasterizedbool или None sketch_params(масштаб: float, длина: float, случайность: float) snapbool или None solid_capstyle{'butt', 'round', 'projecting'} solid_joinstyle{'miter', 'round', 'bevel'} transformmatplotlib.transforms.Transformurlстрока visiblebool xdataодномерный массив ydataодномерный массив zorderчисло с плавающей точкой
Примечания
При построении графиков мощность изображается как \(10 \log_{10}(P_{xy})\) для децибелов, хотя
P_{xy}возвращается само по себе.Ссылки
Bendat & Piersol -- Случайные данные: анализ и методики измерения, John Wiley & Sons (1986)
Примечание
В дополнение к описанным выше аргументам, эта функция может принять ключевой аргумент data. Если такой аргумент data задан, следующие аргументы заменяются на data[<arg>]:
- Все аргументы с следующими именами: 'x', 'y'.
Объекты, переданные в качестве data, должны поддерживать доступ к элементам (
data[<arg>]) и проверку на принадлежность (<arg> in data).
© 2012–2018 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.2.2/api/_as_gen/matplotlib.pyplot.csd.html