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 -
В качестве альтернативы может быть передан вектор (# измерений,) и обработан как одна точка.
Возвращает: - (# точек,)-массив
-
Значения в каждой точке.
Исключения: -
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) -
Вычислить угол спектра частот (обёрнутый спектр фаз) для x. Данные дополняются до длины pad_to, и к сигналу применяется функция окна window.
Параметры: -
x1-D array or sequence -
Массив или последовательность, содержащая данные.
-
Fsfloat, default: 2 -
Частота дискретизации (образцов в единицу времени). Она используется для вычисления частот Фурье, freqs, в циклах на единицу времени.
-
windowcallable or ndarray, default: window_hanning -
Функция или вектор длины NFFT. Для создания векторов окон см.
window_hanning,window_none,numpy.blackman,numpy.hamming,numpy.bartlett,scipy.signal,scipy.signal.get_windowи т. д. Если в качестве аргумента передана функция, она должна принять сегмент данных в качестве аргумента и вернуть окнозированную версию сегмента. -
sides{'default', 'onesided', 'twosided'}, optional -
Какие стороны спектра возвращать. 'default' — односторонняя для вещественных данных и двухсторонняя для комплексных данных. 'onesided' — принудительно возвращает односторонний спектр, а 'twosided' — двухсторонний.
-
pad_toint, optional -
Количество точек, до которого дополняется сегмент данных при выполнении FFT. Хотя это не увеличивает фактическое разрешение спектра (минимальное расстояние между разрешаемыми пиками), это может обеспечить больше точек на графике, что позволит получить больше деталей. Это соответствует параметру n в вызове fft(). Значение по умолчанию — None, что устанавливает pad_to равным длине входного сигнала (т. е. без дополнения).
Возвращаемое значение: -
spectrum1-D array -
Угол спектра частот (обёрнутый спектр фаз).
-
freqs1-D array -
Частоты, соответствующие элементам в spectrum.
См. также
-
psd - Возвращает плотность спектральной мощности.
-
complex_spectrum - Возвращает комплексный спектр частот.
-
magnitude_spectrum - Возвращает абсолютное значение
complex_spectrum. -
angle_spectrum - Возвращает угол
complex_spectrum. -
phase_spectrum - Возвращает фазу (развёрнутый угол)
complex_spectrum. -
specgram - Может вернуть комплексный спектр сегментов внутри сигнала.
-
-
matplotlib.mlab.apply_window(x, window, axis=0, return_window=None)[source] -
[Устаревшее] Применить заданное окно к заданному одномерному или двумерному массиву по заданной оси.
Параметры: -
x1D or 2D array or sequence -
Массив или последовательность, содержащая данные.
-
windowfunction or array. -
Функция для создания окна или массив длиной x.shape[axis]
-
axisint -
Ось, по которой следует выполнить повторение. Должна быть 0 или 1. Значение по умолчанию — 0.
-
return_windowbool -
Если True, также возвращаются одномерные значения применённого окна.
Примечания
Устарело начиная с версии 3.2.
-
-
matplotlib.mlab.cohere(x, y, NFFT=256, Fs=2, detrend=<function detrend_none at 0x7fba54bf6820>, window=<function window_hanning at 0x7fba54bf6160>, 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, default: 2 -
Частота дискретизации (образцов в единицу времени). Она используется для расчёта частот Фурье, freqs, в циклах за единицу времени.
-
windowcallable or ndarray, default: window_hanning -
Функция или вектор длиной NFFT. Для создания векторов окон см.
window_hanning,window_none,numpy.blackman,numpy.hamming,numpy.bartlett,scipy.signal,scipy.signal.get_windowи т.д. Если в качестве аргумента передаётся функция, она должна принимать фрагмент данных и возвращать его окно. -
sides{'default', 'onesided', 'twosided'}, optional -
Какую сторону спектра возвращать. 'default' — односторонняя для вещественных данных и двухсторонняя для комплексных данных. 'onesided' — односторонняя, 'twosided' — двухсторонняя.
-
pad_toint, optional -
Количество точек, до которых дополняется фрагмент данных при выполнении БПФ. Это может отличаться от NFFT, которое задаёт количество точек данных. Хотя это не увеличивает фактическое разрешение спектра (минимальное расстояние между разрешимыми пиками), это может дать больше точек на графике, что позволит получить больше деталей. Соответствует параметру n в вызове fft(). По умолчанию None, что устанавливает pad_to равным NFFT
-
NFFTint, default: 256 -
Количество точек данных, используемых в каждом блоке для БПФ. Мощность 2 является наиболее эффективной. Этого не следует использовать для получения нулевого заполнения, или масштабирование результата будет неверным; для этого используйте 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, default: True -
Нужно ли масштабировать значения плотности по масштабу частоты, что даёт плотность в единицах Гц^-1. Это позволяет интегрировать по возвращаемым значениям частоты. По умолчанию True для совместимости с MATLAB.
-
noverlapint -
Количество перекрывающихся точек между блоками. Значение по умолчанию равно 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) -
Вычисляет комплексный спектр частот x. Данные дополняются до длины pad_to, и к сигналу применяется функция окна window.
Параметры: -
x1-D array or sequence -
Массив или последовательность, содержащая данные
-
Fsfloat, default: 2 -
Частота дискретизации (образцов в единицу времени). Она используется для расчёта частот Фурье, freqs, в циклах за единицу времени.
-
windowcallable or ndarray, default: window_hanning -
Функция или вектор длиной NFFT. Для создания векторов окон см.
window_hanning,window_none,numpy.blackman,numpy.hamming,numpy.bartlett,scipy.signal,scipy.signal.get_windowи т.д. Если в качестве аргумента передаётся функция, она должна принимать фрагмент данных и возвращать его окно. -
sides{'default', 'onesided', 'twosided'}, optional -
Какую сторону спектра возвращать. 'default' — односторонняя для вещественных данных и двухсторонняя для комплексных данных. 'onesided' — односторонняя, 'twosided' — двухсторонняя.
-
pad_toint, optional -
Количество точек, до которых дополняется фрагмент данных при выполнении БПФ. Хотя это не увеличивает фактическое разрешение спектра (минимальное расстояние между разрешимыми пиками), это может дать больше точек на графике, что позволит получить больше деталей. Соответствует параметру n в вызове fft(). По умолчанию None, что устанавливает pad_to равным длине входного сигнала (т.е. без дополнения).
Возвращаемые значения: -
spectrum1-D array -
Комплексный спектр частот.
-
freqs1-D array -
Частоты, соответствующие элементам в 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, y1-D arrays or sequences -
Массивы или последовательности, содержащие данные
-
Fsfloat, default: 2 -
Частота дискретизации (образцы в единицу времени). Используется для вычисления частот Фурье, freqs, в циклах на единицу времени.
-
windowcallable or ndarray, default: window_hanning -
Функция или вектор длины NFFT. Для создания векторов окон см.
window_hanning,window_none,numpy.blackman,numpy.hamming,numpy.bartlett,scipy.signal,scipy.signal.get_windowи т.д. Если в качестве аргумента передаётся функция, она должна принимать сегмент данных и возвращать оконенную версию сегмента. -
sides{'default', 'onesided', 'twosided'}, optional -
Какие стороны спектра возвращать. 'default' — односторонний для вещественных данных и двухсторонний для комплексных данных. 'onesided' принудительно возвращает односторонний спектр, а 'twosided' — двухсторонний.
-
pad_toint, optional -
Количество точек, до которого дополняется сегмент данных при выполнении БПФ. Может отличаться от NFFT, которое определяет количество точек данных, используемых. Хотя не увеличивает фактическое разрешение спектра (минимальное расстояние между разрешаемыми пиками), это может дать больше точек на графике, позволяя получить больше деталей. Соответствует параметру n в вызове fft(). По умолчанию значение None, которое устанавливает pad_to равным NFFT.
-
NFFTint, default: 256 -
Количество точек данных, используемых в каждом блоке для БПФ. Мощность 2 наиболее эффективна. Это НЕ должно использоваться для нулевого заполнения, иначе масштабирование результата будет неверным; используйте 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, default: True -
Нужно ли масштабировать значения плотности с учётом частоты масштабирования, что даёт плотность в единицах Hz^-1. Это позволяет интегрировать значения по возвращаемым частотам. По умолчанию True для совместимости с MATLAB.
-
noverlapint -
Количество перекрывающихся точек между сегментами. Значение по умолчанию равно 0 (нет перекрытия).
Возвращает: -
Pxy1-D array -
Значения для кросс-спектра \(P_{xy}\) до масштабирования (вещественные)
-
freqs1-D array -
Частоты, соответствующие элементам в Pxy
См. также
-
psd - эквивалентно установке
y = x.
Ссылки
Bendat & Piersol -- Случайные данные: методы анализа и измерения, John Wiley & Sons (1986)
-
-
matplotlib.mlab.detrend(x, key=None, axis=None)[source] -
Возвращает x с удалённой тенденцией.
Параметры: -
xarray or sequence -
Массив или последовательность, содержащая данные.
-
key{'default', 'constant', 'mean', 'linear', 'none'} or function -
Алгоритм удаления тенденции. '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-D or 1-D array or sequence -
Массив или последовательность, содержащая данные
-
axisint -
Ось, по которой нужно вычислить среднее значение. См. numpy.mean для описания этого аргумента.
См. также
-
detrend_mean - Другой алгоритм удаления тенденции.
-
detrend_none - Другой алгоритм удаления тенденции.
-
detrend - Обёртка вокруг всех алгоритмов удаления тенденции.
-
-
matplotlib.mlab.detrend_mean(x, axis=None)[source] -
Возвращает x минус среднее значение(x).
Параметры: -
xarray or sequence -
Массив или последовательность, содержащая данные. Может иметь любую размерность
-
axisint -
Ось, по которой нужно вычислить среднее значение. См. numpy.mean для описания этого аргумента.
См. также
-
detrend_linear - Другой алгоритм удаления тенденции.
-
detrend_none - Другой алгоритм удаления тенденции.
-
detrend - Обёртка вокруг всех алгоритмов удаления тенденции.
-
-
matplotlib.mlab.detrend_none(x, axis=None)[source] -
Возвращает x: без сглаживания.
Параметры: -
xany object -
Объект, содержащий данные
-
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-D array or sequence -
Массив или последовательность, содержащая данные
-
Fsfloat, default: 2 -
Частота дискретизации (образцы в единицу времени). Она используется для расчёта частот Фурье, freqs, в циклах за единицу времени.
-
windowcallable or ndarray, default: window_hanning -
Функция или вектор длины NFFT. Для создания векторов окна см.
window_hanning,window_none,numpy.blackman,numpy.hamming,numpy.bartlett,scipy.signal,scipy.signal.get_windowи т.д. Если в качестве аргумента передана функция, она должна принимать фрагмент данных в качестве аргумента и возвращать его версию, оконную. -
sides{'default', 'onesided', 'twosided'}, optional -
Какие стороны спектра возвращать. 'default' - односторонняя для вещественных данных и двухсторонняя для комплексных. 'onesided' - принудительно возвращает односторонний спектр, 'twosided' - принудительно двухсторонний.
-
pad_toint, optional -
Количество точек, до которого фрагмент данных дополняется при выполнении FFT. Несмотря на то, что он не увеличивает фактическое разрешение спектра (минимальное расстояние между разрешаемыми пиками), это может дать больше точек в графике, позволяя получить больше деталей. Соответствует параметру n в вызове fft(). По умолчанию None, что устанавливает pad_to равным длине входного сигнала (т.е. без дополнения).
Возвращает: -
spectrum1-D array -
Модуль (абсолютное значение) спектра частот.
-
freqs1-D array -
Частоты, соответствующие элементам в spectrum.
См. также
-
psd - Возвращает плотность спектральной мощности.
-
complex_spectrum - Возвращает комплекснозначный спектр частот.
-
magnitude_spectrum - Возвращает абсолютное значение
complex_spectrum. -
angle_spectrum - Возвращает угол
complex_spectrum. -
phase_spectrum - Возвращает фазу (неупакованный угол)
complex_spectrum. -
specgram - Может возвращать комплексный спектр сегментов внутри сигнала.
-
-
matplotlib.mlab.phase_spectrum(x, Fs=None, window=None, pad_to=None, sides=None) -
Вычисление фазы спектра частот (неупакованный фазовый спектр) x. Данные дополняются до длины pad_to, и к сигналу применяется функция окна window.
Параметры: -
x1-D array or sequence -
Массив или последовательность, содержащая данные
-
Fsfloat, default: 2 -
Частота дискретизации (образцы в единицу времени). Она используется для расчёта частот Фурье, freqs, в циклах за единицу времени.
-
windowcallable or ndarray, default: window_hanning -
Функция или вектор длины NFFT. Для создания векторов окна см.
window_hanning,window_none,numpy.blackman,numpy.hamming,numpy.bartlett,scipy.signal,scipy.signal.get_windowи т.д. Если в качестве аргумента передана функция, она должна принимать фрагмент данных в качестве аргумента и возвращать его версию, оконную. -
sides{'default', 'onesided', 'twosided'}, optional -
Какие стороны спектра возвращать. 'default' - односторонняя для вещественных данных и двухсторонняя для комплексных. 'onesided' - принудительно возвращает односторонний спектр, 'twosided' - принудительно двухсторонний.
-
pad_toint, optional -
Количество точек, до которого фрагмент данных дополняется при выполнении FFT. Несмотря на то, что он не увеличивает фактическое разрешение спектра (минимальное расстояние между разрешаемыми пиками), это может дать больше точек в графике, позволяя получить больше деталей. Соответствует параметру n в вызове fft(). По умолчанию None, что устанавливает pad_to равным длине входного сигнала (т.е. без дополнения).
Возвращает: -
spectrum1-D array -
Фаза спектра частот (неупакованный фазовый спектр).
-
freqs1-D array -
Частоты, соответствующие элементам в 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.
Параметры: -
x1-D array or sequence -
Массив или последовательность, содержащая данные.
-
Fsfloat, default: 2 -
Частота дискретизации (образцы в единицу времени). Используется для вычисления частот Фурье, freqs, в циклах на единицу времени.
-
windowcallable or ndarray, default: window_hanning -
Функция или вектор длиной NFFT. Для создания векторов окон см.
window_hanning,window_none,numpy.blackman,numpy.hamming,numpy.bartlett,scipy.signal,scipy.signal.get_windowи т. д. Если в качестве аргумента передаётся функция, она должна принимать сегмент данных в качестве аргумента и возвращать оконченный вариант сегмента. -
sides{'default', 'onesided', 'twosided'}, optional -
Какие стороны спектра возвращать. 'default' — односторонняя для вещественных данных и двухсторонняя для комплексных данных. 'onesided' — принудительно возвращает односторонний спектр, 'twosided' — принудительно возвращает двухсторонний.
-
pad_toint, optional -
Число точек, до которого дополняется сегмент данных при выполнении FFT. Может отличаться от NFFT, которое определяет количество используемых точек данных. Не увеличивает фактическое разрешение спектра (минимальное расстояние между разрешаемыми пиками), но может дать больше точек в графике, что позволит получить больше деталей. Соответствует параметру n в вызове fft(). По умолчанию None, что устанавливает pad_to равным NFFT.
-
NFFTint, default: 256 -
Количество точек данных, используемых в каждом блоке для FFT. Степень двойки наиболее эффективна. Не следует использовать для добавления нулей, так как это повлияет на масштабирование результата; для этого используйте 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, default: True -
Необходимо ли масштабировать возвращаемые значения плотности с помощью частоты масштабирования, которая дает плотность в единицах Hz^-1. Это позволяет интегрировать по возвращаемым значениям частоты. По умолчанию True для совместимости с MATLAB.
-
noverlapint -
Количество перекрывающихся точек между сегментами. Значение по умолчанию 0 (без перекрытия).
Возвращаемые значения: -
Pxx1-D array -
Значения для спектра мощности \(P_{xx}\) (вещественные)
-
freqs1-D array -
Частоты, соответствующие элементам в Pxx
См. также
-
specgram -
specgramотличается по умолчанию перекрытием; не возвращает среднее значение периодограмм сегмента; и возвращает время сегментов. -
magnitude_spectrum - возвращает спектр величины.
-
csd - возвращает спектральную плотность между двумя сигналами.
Ссылки
Бендат и Пирсол — Случайные данные: анализ и измерения, 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 -
Одномерный массив или последовательность.
-
Fsfloat, default: 2 -
Частота дискретизации (образцы за единицу времени). Она используется для вычисления частот Фурье, freqs, в циклах за единицу времени.
-
windowcallable or ndarray, default: window_hanning -
Функция или вектор длиной NFFT. Для создания векторов окна см.
window_hanning,window_none,numpy.blackman,numpy.hamming,numpy.bartlett,scipy.signal,scipy.signal.get_windowи т.д. Если в качестве аргумента передаётся функция, она должна принимать сегмент данных и возвращать окно сегмента. -
sides{'default', 'onesided', 'twosided'}, optional -
Какие стороны спектра вернуть. 'default' — односторонняя для вещественных данных и двухсторонняя для комплексных данных. 'onesided' принудительно возвращает односторонний спектр, а 'twosided' — двухсторонний.
-
pad_toint, optional -
Количество точек, до которых дополняются данные сегмента при выполнении FFT. Это может отличаться от NFFT, которое определяет количество точек данных, используемых для вычисления. Хотя это не увеличивает фактическое разрешение спектра (минимальное расстояние между разрешимыми пиками), это может дать больше точек на графике, позволяя получить больше деталей. Это соответствует параметру n в вызове fft(). По умолчанию значение None, которое устанавливает pad_to равным NFFT.
-
NFFTint, default: 256 -
Количество точек данных, используемых в каждом блоке для FFT. Степень 2 наиболее эффективна. Это НЕЛЬЗЯ использовать для получения нулевого заполнения, иначе масштабирование результата будет неверным; для этого используйте 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, default: True -
Нужно ли масштабировать возвращаемые значения плотности с помощью частоты масштабирования, что даёт плотность в единицах Hz^-1. Это позволяет интегрировать возвращаемые значения частоты. По умолчанию True для совместимости с MATLAB.
-
noverlapint, optional -
Количество перекрывающихся точек между блоками. Значение по умолчанию — 128.
-
modestr, default: '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 -
Массив или последовательность, содержащие данные.
-
nint -
Количество повторений массива.
-
axisint -
Ось, по которой будут проходить данные.
Примечания
Устарело начиная с версии 3.2.
Ссылки
stackoverflow: Повторить массив NumPy без дублирования данных?
-
-
matplotlib.mlab.stride_windows(x, n, noverlap=None, axis=0)[source] -
Получить все окна x длины n как единый массив, используя шаги для предотвращения дублирования данных.
Предупреждение
Запись в выходной массив небезопасна. Несколько элементов могут указывать на один и тот же участок памяти, поэтому изменение одного значения может изменить другие.
Параметры: -
x1D array or sequence -
Массив или последовательность, содержащие данные.
-
nint -
Количество точек данных в каждом окне.
-
noverlapint -
Перекрытие между соседними окнами. По умолчанию 0 (без перекрытия).
-
axisint -
Ось, по которой будут проходить окна.
Ссылки
stackoverflow: Окно скользящего среднего для одномерных массивов в Numpy? stackoverflow: Использование шагов для эффективного фильтра скользящего среднего
-
-
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.3.3/api/mlab_api.html