You are reading documentation for the unreleased version of Matplotlib. Try searching for the released version of this page instead?
Applications are open for the 2018 John Hunter Matplotlib Summer Fellowship. Apply now!
Version 2.2.2.post1752+g4b1f956cb
Fork me on GitHub


matplotlib.pyplot.acorr(x, *, data=None, **kwargs)[source]ΒΆ

Plot the autocorrelation of x.

x : sequence of scalar
detrend : callable, optional, default: mlab.detrend_none

x is detrended by the detrend callable. Default is no normalization.

normed : bool, optional, default: True

If True, input vectors are normalised to unit length.

usevlines : bool, optional, default: True

If True, Axes.vlines is used to plot the vertical lines from the origin to the acorr. Otherwise, Axes.plot is used.

maxlags : int, optional, default: 10

Number of lags to show. If None, will return all 2 * len(x) - 1 lags.

lags : array (length 2*maxlags+1)

lag vector.

c : array (length 2*maxlags+1)

auto correlation vector.

line : LineCollection or Line2D

Artist added to the axes of the correlation.

LineCollection if usevlines is True Line2D if usevlines is False

b : Line2D or None

Horizontal line at 0 if usevlines is True None usevlines is False

Other Parameters:
linestyle : Line2D property, optional, default: None

Only used if usevlines is False.

marker : str, optional, default: 'o'


The cross correlation is performed with numpy.correlate() with mode = 2.


In addition to the above described arguments, this function can take a data keyword argument. If such a data argument is given, the following arguments are replaced by data[<arg>]:

  • All arguments with the following names: 'x'.

Objects passed as data must support item access (data[<arg>]) and membership test (<arg> in data).