Spec-Zone.ru › Matplotlib 3.5

matplotlib.mlab

Функции Numerical Python, написанные для совместимости с командами MATLAB с одинаковыми именами. Большинство численных функций Python можно найти в библиотеках NumPy и SciPy. Здесь остаётся код для выполнения спектральных вычислений и оценки плотности ядра.

Спектральные функции

cohere

Когерентность (нормализованная кросс-спектральная плотность)

csd

Кросс-спектральная плотность с использованием усреднённой периодограммы Уэлча

detrend

Удалить среднее значение или линию наилучшей аппроксимации из массива

psd

Плотность спектральной мощности с использованием усреднённой периодограммы Уэлча

specgram

Спектрограмма (спектр по сегментам времени)

complex_spectrum

Возвращает комплекснозначный спектральный анализ частоты сигнала

magnitude_spectrum

Возвращает величину спектральной частоты сигнала

angle_spectrum

Возвращает угол (упакованную фазу) спектральной частоты сигнала

phase_spectrum

Возвращает фазу (неупакованный угол) спектральной частоты сигнала

detrend_mean

Удалить среднее значение из линии.

detrend_linear

Удалить линию наилучшей аппроксимации из линии.

detrend_none

Возвращает исходную линию.

stride_windows

Получить все окна в массиве с высокой эффективностью использования памяти

classmatplotlib.mlab.GaussianKDE(dataset, bw_method=None)[source]

Bases: object

Представление оценки плотности ядра с использованием гауссовских ядер.

Parameters
datasetarray-like

Точки данных для оценки. В случае одномерных данных это одномерный массив, в противном случае двумерный массив с формой (# измерений, # данных).

bw_methodstr, скаляр или вызываемый объект, необязательно

Метод, используемый для расчёта ширины полосы оценивателя. Это может быть 'scott', 'silverman', скалярная константа или вызываемый объект. Если скаляр, это будет использоваться напрямую как kde.factor. Если вызываемый объект, он должен принимать экземпляр GaussianKDE в качестве единственного параметра и возвращать скаляр. Если None (по умолчанию), используется 'scott'.

Attributes
datasetndarray

Набор данных, с которым gaussian_kde был инициализирован.

dimint

Количество измерений.

num_dpint

Количество точек данных.

factorfloat

Коэффициент ширины полосы, полученный из kde.covariance_factor, с которым умножается матрица ковариации.

covariancendarray

Матрица ковариации dataset, масштабированная вычисленной шириной полосы (kde.factor).

inv_covndarray

Обратная матрица covariance.

Методы

kde.evaluate(points)

(ndarray) Оценить pdf на заданном наборе точек.

kde(points)

(ndarray) То же самое, что и kde.evaluate(points)

covariance_factor()[source]
evaluate(points)[source]

Оценить pdf на заданном наборе точек.

Parameters
points(# of dimensions, # of points)-array

В качестве альтернативы можно передать вектор (# of dimensions,) и обработать его как одну точку.

Returns
(# of points,)-array

Значения в каждой точке.

Raises
ValueErrorесли размерность входных точек отличается

от размерности KDE.

scotts_factor()[source]
silverman_factor()[source]
END_OF_DOCUMENT_MARKER
matplotlib.mlab.angle_spectrum(x, Fs=None, window=None, pad_to=None, sides=None)

Вычислить угол спектра частоты (обёрнутый спектр фазы) x. Данные дополняются до длины pad_to, и к сигналу применяется функция окна window.

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

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

Fsвещественное число, по умолчанию: 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_toцелое число, необязательно

Количество точек, до которого дополняется сегмент данных при выполнении БПФ. Хотя это не увеличивает фактическое разрешение спектра (минимальное расстояние между разрешаемыми пиками), это может дать больше точек в графике, позволяя получить больше деталей. Это соответствует параметру n в вызове fft(). По умолчанию None, который устанавливает pad_to равным длине входного сигнала (т. е. без дополнения).

Возвращает
spectrumОдномерный массив

Угол спектра частоты (обёрнутый спектр фазы).

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

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

См. также

psd

Возвращает плотность спектральной мощности.

complex_spectrum

Возвращает комплекснозначный спектр частоты.

magnitude_spectrum

Возвращает абсолютное значение complex_spectrum.

angle_spectrum

Возвращает угол complex_spectrum.

phase_spectrum

Возвращает фазу (необёрнутый угол) complex_spectrum.

specgram

Может вернуть комплексный спектр сегментов в пределах сигнала.

matplotlib.mlab.cohere(x, y, NFFT=256, Fs=2, detrend=<function detrend_none>, window=<function window_hanning>, noverlap=0, pad_to=None, sides='default', scale_by_freq=None)[source]

Когерентность между x и y. Когерентность — это нормированная кросс-спектральная плотность:

\[C_{xy} = \frac{|P_{xy}|^2}{P_{xx}P_{yy}}\]
Параметры
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 (без наложения)

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

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

Вектор когерентности.

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

Частоты для элементов в Cxy.

См. также

psd(), csd()

Для получения информации о методах вычисления \(P_{xy}\), \(P_{xx}\) и \(P_{yy}\).

matplotlib.mlab.complex_spectrum(x, Fs=None, window=None, pad_to=None, sides=None)

Вычисление комплексного спектра частот x. Данные дополняются до длины pad_to, и к сигналу применяется функция оконeния window.

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

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

FsЧисло, по умолчанию: 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_toЦелое число, необязательно

Количество точек, до которого дополняется сегмент данных при выполнении FFT. Хотя это не увеличивает фактическое разрешение спектра (минимальное расстояние между разрешимыми пиками), это может дать больше точек на графике, что позволит получить больше деталей. Это соответствует параметру n в вызове fft(). По умолчанию None, что устанавливает pad_to равным длине входного сигнала (т.е. без дополнения).

Возвращает
spectrumОдномерный массив

Комплексный спектр частот.

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

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

См. также

psd

Возвращает плотность спектральной мощности.

complex_spectrum

Возвращает комплексный спектр частот.

magnitude_spectrum

Возвращает абсолютное значение complex_spectrum.

angle_spectrum

Возвращает угол complex_spectrum.

phase_spectrum

Возвращает фазу (непрерывный угол) complex_spectrum.

specgram

Может возвращать комплексный спектр сегментов в сигнале.

matplotlib.mlab.csd(x, y, NFFT=None, Fs=None, detrend=None, window=None, noverlap=None, pad_to=None, sides=None, scale_by_freq=None)[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, который определяет количество точек данных, используемых. Несмотря на то, что это не увеличивает фактическое разрешение спектра (минимальное расстояние между разрешаемыми пиками), это может дать больше точек в графике, что позволит получить более подробную информацию. Соответствует параметру n в вызове fft(). По умолчанию равно None, что устанавливает pad_to равным NFFT

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

Количество точек данных, используемых в каждом блоке для БПФ. Степень 2 наиболее эффективна. Это не следует использовать для получения нулевого заполнения, или масштабирование результата будет неправильным; для этого используйте 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 (без перекрытия)

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

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

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

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

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

См. также

psd

эквивалентно установлению y = x.

Ссылки

Бендат и Пьерсоль — Случайные данные: методы анализа и измерения, John Wiley & Sons (1986)

matplotlib.mlab.detrend(x, key=None, axis=None)[source]

Возвращает x с удалённой тенденцией.

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

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

key{'default', 'constant', 'mean', 'linear', 'none'} или функция

Алгоритм удаления тренда. 'default', 'mean' и 'constant' — то же, что detrend_mean. 'linear' — то же, что detrend_linear. 'none' — то же, что detrend_none. По умолчанию — 'mean'. Более подробную информацию об алгоритмах см. в соответствующих функциях. Также может быть функцией, выполняющей операцию удаления тренда.

axisint

Ось, по которой выполняется удаление тренда.

См. также

detrend_mean

Реализация алгоритма 'mean'.

detrend_linear

Реализация алгоритма 'linear'.

detrend_none

Реализация алгоритма 'none'.

matplotlib.mlab.detrend_linear(y)[source]

Возвращает x минус прямую наилучшей подгонки; линеаризация.

Параметры
y0-мерный или 1-мерный массив или последовательность

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

См. также

detrend_mean

Другой алгоритм линеаризации.

detrend_none

Другой алгоритм линеаризации.

detrend

Обёртка вокруг всех алгоритмов линеаризации.

matplotlib.mlab.detrend_mean(x, axis=None)[source]

Возвращает x минус среднее значение(x).

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

Массив или последовательность, содержащая данные. Может иметь любую размерность

axisint

Ось, по которой вычисляется среднее. Смотрите numpy.mean для описания этого аргумента.

См. также

detrend_linear

Другой алгоритм линеаризации.

detrend_none

Другой алгоритм линеаризации.

detrend

Обёртка вокруг всех алгоритмов линеаризации.

matplotlib.mlab.detrend_none(x, axis=None)[source]

Возвращает x: без линеаризации.

Параметры
xлюбой объект

Объект, содержащий данные

axisint

Этот параметр игнорируется. Он включён для совместимости с detrend_mean

См. также

detrend_mean

Другой алгоритм линеаризации.

detrend_linear

Другой алгоритм линеаризации.

detrend

Обёртка вокруг всех алгоритмов линеаризации.

matplotlib.mlab.magnitude_spectrum(x, Fs=None, window=None, pad_to=None, sides=None)

Вычисляет величину (абсолютное значение) спектра частот x. Данные дополняются до длины pad_to, и к сигналу применяется функция окна window.

Параметры
x1-мерный массив или последовательность

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

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, необязательно

Количество точек, до которого дополняются сегменты данных при выполнении БПФ. Хотя это не увеличивает фактическое разрешение спектра (минимальное расстояние между разрешимыми пиками), это может дать больше точек на графике, что позволит получить больше деталей. Это соответствует параметру n в вызове fft(). По умолчанию None, что устанавливает pad_to равным длине входного сигнала (т.е. без дополнения).

Возвращает
spectrum1-мерный массив

Величина (абсолютное значение) спектра частот.

freqs1-мерный массив

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

См. также

psd

Возвращает плотность спектральной мощности.

complex_spectrum

Возвращает комплексный спектр частот.

magnitude_spectrum

Возвращает абсолютное значение complex_spectrum.

angle_spectrum

Возвращает угол complex_spectrum.

phase_spectrum

Возвращает фазу (распакованный угол) complex_spectrum.

specgram

Может возвращать комплексный спектр сегментов сигнала.

END_OF_DOCUMENT_MARKER
matplotlib.mlab.phase_spectrum(x, Fs=None, window=None, pad_to=None, sides=None)

Вычислить фазу спектра частот (развёрнутый фазовый спектр) x. Данные дополняются до длины pad_to, и к сигналу применяется функция оконного анализа window.

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

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

FsВещественное число, по умолчанию: 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_toЦелое число, необязательно

Количество точек, до которых дополняется сегмент данных при выполнении FFT. Хотя это не увеличивает фактическое разрешение спектра (минимальное расстояние между разрешаемыми пиками), это может обеспечить больше точек в графике, что позволит получить больше деталей. Это соответствует параметру n в вызове fft(). По умолчанию равно None, что устанавливает pad_to равным длине входного сигнала (т. е. без дополнения).

Возвращает
spectrumОдномерный массив

Фаза спектра частот (развёрнутый фазовый спектр).

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

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

См. также

psd

Возвращает плотность спектральной мощности.

complex_spectrum

Возвращает комплекснозначный спектр частот.

magnitude_spectrum

Возвращает абсолютное значение complex_spectrum.

angle_spectrum

Возвращает угол complex_spectrum.

phase_spectrum

Возвращает фазу (развёрнутый угол) complex_spectrum.

specgram

Может возвращать комплексный спектр сегментов внутри сигнала.

matplotlib.mlab.psd(x, NFFT=None, Fs=None, detrend=None, window=None, noverlap=None, pad_to=None, sides=None, scale_by_freq=None)[source]

Вычисление спектральной плотности мощности.

Спектральная плотность мощности \(P_{xx}\) методом усреднённого периодограммы Велча. Вектор x делится на сегменты длиной NFFT. Каждый сегмент обрабатывается функцией detrend и окончивается функцией window. noverlap задаёт длину перекрытия между сегментами. \(|\mathrm{fft}(i)|^2\) каждого сегмента \(i\) усредняются для вычисления \(P_{xx}\).

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

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

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

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, которое определяет количество точек данных, используемых. Хотя это не увеличивает фактическое разрешение спектра (минимальное расстояние между разрешаемыми пиками), это может дать больше точек на графике, что позволит получить больше деталей. Это соответствует параметру n в вызове fft(). По умолчанию равно None, что устанавливает pad_to равным NFFT

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

Количество точек данных, используемых в каждом блоке для БПФ. Мощность 2 наиболее эффективна. Не следует использовать для нулевого заполнения, или масштабирование результата будет некорректным; для этого используйте 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 (без перекрытия)

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

Возвращает
PxxОдномерный массив

Значения для спектра мощности \(P_{xx}\) (вещественные)

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

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

См. также

specgram

specgram отличается по умолчанию перекрытием; не возвращает среднее значение периодограмм сегмента; и возвращает время сегментов.

magnitude_spectrum

возвращает спектр амплитуды.

csd

возвращает спектральную плотность между двумя сигналами.

Ссылки

Bendat & Piersol — Случайные данные: процедуры анализа и измерения, John Wiley & Sons (1986)

matplotlib.mlab.specgram(x, NFFT=None, Fs=None, detrend=None, window=None, noverlap=None, pad_to=None, sides=None, scale_by_freq=None, mode=None)[source]

Вычислить спектр зависимости от времени.

Вычислить и построить спектр зависимости от времени данных в x. Данные разбиваются на сегменты длиной NFFT, и вычисляется спектр каждого сегмента. К каждому сегменту применяется функция оконного преобразования window, а количество перекрытия каждого сегмента задаётся параметром noverlap.

Параметры
xarray-like

Одномерный массив или последовательность.

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

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

windowcallable или ndarray, по умолчанию: 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, необязательно

Количество точек, до которых дополняется сегмент данных при выполнении FFT. Это может отличаться от NFFT, которое определяет количество точек данных, используемых для вычислений. Хотя это не увеличивает фактическое разрешение спектра (минимальное расстояние между разрешимыми пиками), это может дать больше точек на графике, позволяя получить более подробную информацию. Соответствует параметру n в вызове fft(). По умолчанию равно None, что устанавливает pad_to равным NFFT.

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

Количество точек данных, используемых в каждом блоке для FFT. Мощность 2 является наиболее эффективной. Это НЕ следует использовать для получения нулевого заполнения, или масштабирование результата будет неверным; используйте pad_to для этого вместо.

detrend{'none', 'mean', 'linear'} или callable, по умолчанию: 'none'

Функция, применяемая к каждому сегменту перед fft, предназначенная для удаления среднего значения или линейной тенденции. В отличие от 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, по умолчанию: 128

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

modestr, по умолчанию: 'psd'
Какой тип спектра использовать:
'psd'

Возвращает плотность спектральной мощности.

'complex'

Возвращает комплекснозначный спектр частот.

'magnitude'

Возвращает спектр по величине.

'angle'

Возвращает спектр фаз без развёртывания.

'phase'

Возвращает спектр фаз с развёртыванием.

Возвращает
spectrumarray-like

2D массив, столбцы — периодограммы последовательных сегментов.

freqsarray-like

1D массив, частоты, соответствующие строкам в spectrum.

tarray-like

1D массив, моменты времени, соответствующие серединам сегментов (т. е. столбцам в spectrum).

См. также

psd

отличается перекрытием и значениями возвращаемых данных.

complex_spectrum

аналогично, но с комплекснозначными частотами.

magnitude_spectrum

аналогично одиночному сегменту, когда mode — 'magnitude'.

angle_spectrum

аналогично одиночному сегменту, когда mode — 'angle'.

phase_spectrum

аналогично одиночному сегменту, когда mode — 'phase'.

Примечания

detrend и scale_by_freq применяются только тогда, когда mode установлен в 'psd'.

matplotlib.mlab.stride_windows(x, n, noverlap=None, axis=0)[source]

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

Предупреждение

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

Параметры
x1D массив или последовательность

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

nint

Количество точек данных в каждом окне.

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

Перекрытие между соседними окнами.

axisint

Ось, вдоль которой будут выполняться вычисления окна.

Ссылки

stackoverflow: Rolling window for 1D arrays in Numpy? stackoverflow: Using strides for an efficient moving average filter

END_OF_DOCUMENT_MARKER
matplotlib.mlab.window_hanning(x)[source]

Возвращает x, умноженный на окно Ханна длиной len(x).

См. также

window_none

Другой алгоритм окна.

matplotlib.mlab.window_none(x)[source]

Функция окна отсутствует; просто возвращает x.

См. также

window_hanning

Другой алгоритм окна.

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

Spec-Zone.ru

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