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, hold=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 : boolean, необязательно
Указывает, должны ли значения плотности масштабироваться по частоте масштабирования, что даёт плотность в единицах 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}само по себе.Ссылки
Bendat & Piersol – Случайные данные: методы анализа и измерения, 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.pyplot.csd.html