matplotlib.pyplot.xcorr — Matplotlib 3.10.8 documentation (original) (raw)
matplotlib.pyplot.xcorr(x, y, *, normed=True, detrend=<function detrend_none>, usevlines=True, maxlags=10, data=None, **kwargs)[source]#
Plot the cross correlation between x and y.
The correlation with lag k is defined as\(\sum_n x[n+k] \cdot y^*[n]\), where \(y^*\) is the complex conjugate of \(y\).
Parameters:
x, yarray-like of length n
Neither x nor y are run through Matplotlib's unit conversion, so these should be unit-less arrays.
detrendcallable, default: mlab.detrend_none (no detrending)
A detrending function applied to x and y. It must have the signature
detrend(x: np.ndarray) -> np.ndarray
normedbool, default: True
If True, input vectors are normalised to unit length.
usevlinesbool, default: True
Determines the plot style.
If True, vertical lines are plotted from 0 to the xcorr value using Axes.vlines. Additionally, a horizontal line is plotted at y=0 using Axes.axhline.
If False, markers are plotted at the xcorr values usingAxes.plot.
maxlagsint, default: 10
Number of lags to show. If None, will return all 2 * len(x) - 1lags.
Returns:
lagsarray (length 2*maxlags+1)
The lag vector.
carray (length 2*maxlags+1)
The auto correlation vector.
lineLineCollection or Line2D
Artist added to the Axes of the correlation:
- LineCollection if usevlines is True.
- Line2D if usevlines is False.
bLine2D or None
Horizontal line at 0 if usevlines is True None usevlines is False.
Other Parameters:
linestyleLine2D property, optional
The linestyle for plotting the data points. Only used if usevlines is False.
markerstr, default: 'o'
The marker for plotting the data points. Only used if usevlines is False.
dataindexable object, optional
If given, the following parameters also accept a string s, which is interpreted as data[s] if s is a key in data:
x, y
**kwargs
Additional parameters are passed to Axes.vlines andAxes.axhline if usevlines is True; otherwise they are passed to Axes.plot.
Notes
The cross correlation is performed with numpy.correlate withmode = "full".