Spec-Zone.ru › Matplotlib 3.5

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)[source]

Построение кросс-спектральной плотности.

Кросс-спектральная плотность \(P_{xy}\) методом усреднённой периодограммы Велча. Векторы x и y делятся на сегменты длиной NFFT. Каждый сегмент обрабатывается функцией detrend и окончивается функцией window. noverlap задаёт длину перекрытия между сегментами. Произведение прямых преобразований Фурье для x и y усредняется по каждому сегменту для вычисления \(P_{xy}\) со масштабированием для исправления потерь мощности из-за окон.

Если len(x) < NFFT или len(y) < NFFT, они будут дополнены нулями до NFFT.

Параметры
x, yОдномерные массивы или последовательности

Массивы или последовательности, содержащие данные.

Fsfloat, по умолчанию: 2

Частота дискретизации (образцов в единицу времени). Используется для вычисления частот Фурье, freqs, в циклах за единицу времени.

windowвызываемая функция или массив, по умолчанию: window_hanning

Функция или вектор длины NFFT. Для создания векторов окон см. window_hanning, window_none, numpy.blackman, numpy.hamming, numpy.bartlett, scipy.signal, scipy.signal.get_window и т. д. Если в качестве аргумента передана функция, она должна принимать сегмент данных и возвращать оконченную версию сегмента.

sides{'default', 'onesided', 'twosided'}, необязательно

Какие стороны спектра возвращать. 'default' — односторонняя для вещественных данных и двухсторонняя для комплексных данных. 'onesided' — принудительно возвращает односторонний спектр, а 'twosided' — двухсторонний.

pad_toint, необязательно

Количество точек, до которого дополняются нулями сегменты данных при выполнении преобразования Фурье. Может отличаться от NFFT, которое определяет количество точек данных, используемых.

NFFTint, по умолчанию: 256

Количество точек данных, используемых в каждом блоке для преобразования Фурье. Степень двойки наиболее эффективна. Не следует использовать для получения нулевого заполнения, так как масштабирование результата будет некорректным. Используйте pad_to для этого вместо этого.

detrend{'none', 'mean', 'linear'} или вызываемая функция, по умолчанию: 'none'

Функция, применяемая к каждому сегменту перед преобразованием Фурье, предназначенная для удаления среднего или линейной тенденции. В отличие от MATLAB, где параметр detrend — это вектор, в Matplotlib это функция. Модуль mlab определяет detrend_none, detrend_mean и detrend_linear, но вы также можете использовать пользовательскую функцию. Вы также можете использовать строку для выбора одной из функций: 'none' вызывает detrend_none. 'mean' вызывает detrend_mean. 'linear' вызывает detrend_linear.

scale_by_freqbool, по умолчанию: True

Определяет, следует ли масштабировать значения плотности с учётом частоты, что даёт плотность в единицах Hz^-1. Это позволяет интегрировать по возвращённым значениям частоты. По умолчанию True для совместимости с MATLAB.

noverlapint, по умолчанию: 0 (без перекрытия)

Количество перекрывающихся точек между сегментами.

Fcint, по умолчанию: 0

Центральная частота x, которая смещает границы x графика для отражения диапазона частот, используемых при получении сигнала, а затем его фильтрации и сэмплирования до базовой полосы.

return_linebool, по умолчанию: False

Включает ли линию, нарисованную в возвращаемых значениях.

Возвращаемые значения
PxyОдномерный массив

Значения для кросс-спектра \(P_{xy}\) до масштабирования (комплексные).

freqsОдномерный массив

Частоты, соответствующие элементам в Pxy.

lineLine2D

Линия, созданная этой функцией. Возвращается только если return_line True.

Другие параметры
dataиндексируемый объект, необязательно

Если задано, следующие параметры также принимают строку s, которая интерпретируется как data[s] (если это не вызывает исключение):

x, y

**kwargs

Ключевые аргументы управляют свойствами Line2D:

Свойство

Описание

agg_filter

функция-фильтр, которая принимает массив float (m, n, 3) и значение dpi, и возвращает массив (m, n, 3)

alpha

скаляр или None

animated

bool

antialiased или aa

bool

clip_box

Bbox

clip_on

bool

clip_path

Объект Patch или (Path, Transform) или None

color или c

цвет

dash_capstyle

CapStyle или {'butt', 'projecting', 'round'}

dash_joinstyle

JoinStyle или {'miter', 'round', 'bevel'}

dashes

последовательность чисел с плавающей точкой (печать/пропуск в точках) или (None, None)

data

массив (2, N) или два одномерных массива

drawstyle или ds

{'default', 'steps', 'steps-pre', 'steps-mid', 'steps-post'}, по умолчанию: 'default'

figure

Figure

fillstyle

{'full', 'left', 'right', 'bottom', 'top', 'none'}

gid

строка

in_layout

bool

label

объект

linestyle или ls

{'-', '--', '-.', ':', '', (смещение, последовательность включения/выключения), ...}

linewidth или lw

вещественное число

marker

строка стиля маркера, Path или MarkerStyle

markeredgecolor или mec

цвет

markeredgewidth или mew

вещественное число

markerfacecolor или mfc

цвет

markerfacecoloralt или mfcalt

цвет

markersize или ms

вещественное число

markevery

None или int или (int, int) или срез или список[int] или вещественное число или (вещественное число, вещественное число) или список[bool]

path_effects

AbstractPathEffect

picker

вещественное число или вызываемая функция [[Artist, Event], tuple[bool, dict]]

pickradius

вещественное число

rasterized

bool

sketch_params

(масштаб: вещественное число, длина: вещественное число, случайность: вещественное число)

snap

bool или None

solid_capstyle

CapStyle или {'butt', 'projecting', 'round'}

solid_joinstyle

JoinStyle или {'miter', 'round', 'bevel'}

transform

неизвестно

url

строка

visible

bool

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)

Примеры использования matplotlib.axes.Axes.csd

CSD Demo

Демонстрация CSD

© 2012–2021 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.5.1/api/_as_gen/matplotlib.axes.Axes.csd.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API