Spec-Zone.ru › Matplotlib 3.2

matplotlib.mlab

Числовые функции 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
Получение всех окон в массиве с высокой эффективностью использования памяти
stride_repeat
Повторение массива с высокой эффективностью использования памяти
apply_window
Применение окна вдоль заданной оси
class matplotlib.mlab.GaussianKDE(dataset, bw_method=None) [source]

Bases: object

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

Параметры:
datasetarray-like

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

bw_methodstr, scalar or callable, optional

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

Атрибуты:
datasetndarray

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

dimint

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

num_dpint

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

factorfloat

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

covariancendarray

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

inv_covndarray

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

Методы

kde.evaluate(points) (ndarray) Оценить оцененную плотность распределения вероятностей в заданных точках.
kde(points) (ndarray) То же, что и kde.evaluate(points)
covariance_factor(self)
evaluate(self, points) [source]

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

Параметры:
points(# of dimensions, # of points)-array

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

Возвращает:
values(# of points,)-array

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

Возможные исключения:
ValueErrorif the dimensionality of the input points is different

больше, чем размерность KDE.

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

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

Параметры:
x1-D array or sequence

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

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

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

Возвращает:
spectrum1-D array

Значения для спектра углов в радианах (вещественные значения)

freqs1-D array

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

См. также

complex_spectrum
Эта функция возвращает значение угла для complex_spectrum.
magnitude_spectrum
Возвращает величины соответствующих частот.
phase_spectrum
Возвращает фазу (необобщённый угол) соответствующих частот.
specgram
Может возвращать комплексный спектр фрагментов в пределах сигнала.
matplotlib.mlab.apply_window(x, window, axis=0, return_window=None) [source]

[Устарело] Применяет заданное окно к заданному массиву 1D или 2D вдоль заданной оси.

Параметры:
x1D or 2D array or sequence

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

windowfunction or array.

Функция для генерации окна или массив длиной x.shape[axis]

axisinteger

Ось, по которой выполняется повторение. Должно быть 0 или 1. По умолчанию 0

return_windowbool

Если True, также возвращаются 1D значения окна, которое было применено

Примечания

Устарело начиная с версии 3.2.

matplotlib.mlab.cohere(x, y, NFFT=256, Fs=2, detrend=<function detrend_none at 0x7f6160382f70>, window=<function window_hanning at 0x7f6160382700>, 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

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

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.

noverlapinteger

Число точек перекрытия между блоками. Значение по умолчанию — 0 (нет перекрытия).

Возвращает:
Результат — кортеж (Cxy, f), где f — частоты вектора когерентности.
Для cohere масштабирование отдельных плотностей с помощью частоты
дискретизации не имеет эффекта, поскольку множители сокращаются.

См. также

psd(), csd()
Для получения информации о методах вычисления \(P_{xy}\), \(P_{xx}\) и \(P_{yy}\).
matplotlib.mlab.complex_spectrum(x, Fs=None, window=None, pad_to=None, sides=None) [source]

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

Параметры:
x1-D array or sequence

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

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

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

Возвращает:
spectrum1-D array

Значения для комплексного спектра (комплексного значения)

freqs1-D array

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

См. также

magnitude_spectrum
Возвращает абсолютное значение этой функции.
angle_spectrum
Возвращает угол этой функции.
phase_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, 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

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

noverlapinteger

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

Возвращаемые значения:
Pxy1-D array

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

freqs1-D array

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

См. также

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

Ссылки

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

matplotlib.mlab.demean(x, axis=0) [source]

[Устаревшее] Возвращает x минус его среднее значение по указанной оси.

Параметры:
xarray or sequence

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

axisinteger

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

См. также

detrend_mean
То же, что и demean, за исключением значения по умолчанию для axis.

Примечания

Устарело начиная с версии 3.1.

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

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

Параметры:
xarray or sequence

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

key{'default', 'constant', 'mean', 'linear', 'none'} or function

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

axisinteger

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

См. также

detrend_mean
Реализация алгоритма 'mean'.
detrend_linear
Реализация алгоритма 'linear'.
detrend_none
Реализация алгоритма 'none'.
END_OF_DOCUMENT_MARKER
matplotlib.mlab.detrend_linear(y) [source]

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

Параметры:
y0-D or 1-D array or sequence

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

axisinteger

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

См. также

detrend_mean
Другой алгоритм детеррендирования.
detrend_none
Другой алгоритм детеррендирования.
detrend
Обёртка вокруг всех алгоритмов детеррендирования.
matplotlib.mlab.detrend_mean(x, axis=None) [source]

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

Параметры:
xarray or sequence

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

axisinteger

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

См. также

detrend_linear
Другой алгоритм детеррендирования.
detrend_none
Другой алгоритм детеррендирования.
detrend
Обёртка вокруг всех алгоритмов детеррендирования.
matplotlib.mlab.detrend_none(x, axis=None) [source]

Возвращает x: без детеррендирования.

Параметры:
xany object

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

axisinteger

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

См. также

detrend_mean
Другой алгоритм детеррендирования.
detrend_linear
Другой алгоритм детеррендирования.
detrend
Обёртка вокруг всех алгоритмов детеррендирования.
matplotlib.mlab.magnitude_spectrum(x, Fs=None, window=None, pad_to=None, sides=None) [source]

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

Параметры:
x1-D array or sequence

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

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

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

Возвращает:
spectrum1-D array

Значения для спектра величины (вещественные)

freqs1-D array

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

См. также

psd
Возвращает плотность спектральной мощности.
complex_spectrum
Эта функция возвращает абсолютное значение complex_spectrum.
angle_spectrum
Возвращает углы соответствующих частот.
phase_spectrum
Возвращает фазу (разобранный угол) соответствующих частот.
specgram
Может возвращать комплексный спектр сегментов внутри сигнала.
END_OF_DOCUMENT_MARKER
matplotlib.mlab.phase_spectrum(x, Fs=None, window=None, pad_to=None, sides=None) [source]

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

Параметры:
x1-D array or sequence

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

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

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

Возвращает:
spectrum1-D array

Значения для спектра фаз в радианах (вещественные значения)

freqs1-D array

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

См. также

complex_spectrum
Эта функция возвращает значение фазы для complex_spectrum.
magnitude_spectrum
Возвращает величины соответствующих частот.
angle_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.

Параметры:
x1-D array or sequence

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

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

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

noverlapinteger

Количество перекрывающихся точек между сегментами. Значение по умолчанию — 0 (без перекрытия).

Возвращаемое значение:
Pxx1-D array

Значения спектральной плотности P_{xx} (вещественные значения)

freqs1-D array

Частоты, соответствующие элементам в 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]

Вычислить спектrogram.

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

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

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

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

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

NFFTint

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

detrend{'none', 'mean', 'linear'} or callable, default 'none'

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

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

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

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

'complex'

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

'magnitude'

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

'angle'

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

'phase'

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

Возвращаемое значение:
spectrumarray-like

Двумерный массив, столбцы — спектры последовательных сегментов.

freqsarray-like

Одномерный массив, частоты, соответствующие строкам в spectrum.

tarray-like

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

См. также

psd
отличается перекрытием и значениями возврата.
complex_spectrum
аналогичный, но с комплексными значениями частот.
magnitude_spectrum
аналогичный для отдельного сегмента, когда режим — 'magnitude'.
angle_spectrum
аналогичный для отдельного сегмента, когда режим — 'angle'.
phase_spectrum
аналогичный для отдельного сегмента, когда режим — 'phase'.

Примечания

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

matplotlib.mlab.stride_repeat(x, n, axis=0) [source]

[Устарело] Повторить значения в массиве эффективным способом с точки зрения памяти. Массив x складывается вертикально n раз.

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

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

Параметры:
x1D array or sequence

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

ninteger

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

axisinteger

Ось, по которой будут проходить данные.

Примечания

Устарело начиная с версии 3.2.

Ссылки

stackoverflow: Repeat NumPy array without replicating data?

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

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

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

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

Параметры:
x1D array or sequence

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

ninteger

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

noverlapinteger

Перекрытие между соседними окнами. По умолчанию 0 (без перекрытия)

axisinteger

Ось, по которой будут проходить окна.

Ссылки

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

matplotlib.mlab.window_hanning(x) [source]

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

См. также

window_none
Другой алгоритм окна.
END_OF_DOCUMENT_MARKER
matplotlib.mlab.window_none(x) [source]

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

См. также

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

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

Spec-Zone.ru

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