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'.
-
-
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 - Может возвращать комплексный спектр сегментов внутри сигнала.
-
-
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.
Ссылки
-
-
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 - Другой алгоритм окна.
-
-
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