matplotlib.pyplot.xcorr#

matplotlib.pyplot.xcorr(x, y, *, normed=True, detrend=<function detrend_none>, usevlines=True, maxlags=10, data=None, **kwargs)[source]#

绘制 xy 之间的互相关。

滞后k的互相关定义为 \(\sum_n x[n+k] \cdot y^*[n]\),其中 \(y^*\)\(y\) 的复共轭。

参数:
x, y长度为 n 的类数组

xy 都不会通过 Matplotlib 的单位转换,因此它们应该是无单位数组。

detrend可调用对象, 默认值: mlab.detrend_none (不进行去趋势)

应用于 xy 的去趋势函数。它必须具有以下签名

detrend(x: np.ndarray) -> np.ndarray
normed布尔值,默认值:True

如果为 True,输入向量将被归一化为单位长度。

usevlines布尔值,默认值:True

决定绘图样式。

如果为 True,则使用 Axes.vlines 从 0 绘制垂直线到 xcorr 值。此外,使用 Axes.axhline 在 y=0 处绘制一条水平线。

如果为 False,则使用 Axes.plot 在 xcorr 值处绘制标记。

maxlags整数,默认值:10

要显示的滞后数量。如果为 None,将返回所有 2 * len(x) - 1 个滞后。

返回:
lags数组(长度为 2*maxlags+1

滞后向量。

c数组(长度为 2*maxlags+1

自相关向量。

lineLineCollectionLine2D

添加到相关性 Axes 的 Artist

  • 如果 usevlines 为 True,则为 LineCollection

  • 如果 usevlines 为 False,则为 Line2D

bLine2D 或 None

如果 usevlines 为 True,则为 0 处的水平线;如果 usevlines 为 False,则为 None。

其他参数:
linestyleLine2D 属性,可选

用于绘制数据点的线型。仅当 usevlinesFalse 时使用。

marker字符串,默认值:'o'

用于绘制数据点的标记。仅当 usevlinesFalse 时使用。

data可索引对象,可选

如果给出,以下参数也接受一个字符串 s,如果 sdata 中的一个键,则将其解释为 data[s]

x, y

**kwargs

如果 usevlinesTrue,则附加参数传递给 Axes.vlinesAxes.axhline;否则它们传递给 Axes.plot

备注

注意

这是 pyplot 封装,对应于 axes.Axes.xcorr

互相关使用 numpy.correlate 执行,模式为 "full"

使用 matplotlib.pyplot.xcorr 的示例#

互相关和自相关

互相关和自相关