You are reading an old version of the documentation (v2.1.2). For the latest version see
Version 2.1.2
Fork me on GitHub


This Page


matplotlib.pyplot.acorr(x, hold=None, data=None, **kwargs)

Plot the autocorrelation of x.


x : sequence of scalar

hold : boolean, optional, deprecated, default: True

detrend : callable, optional, default: mlab.detrend_none

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

normed : boolean, optional, default: True

if True, input vectors are normalised to unit length.

usevlines : boolean, 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 : integer, optional, default: 10

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


(lags, c, line, b) : where:

  • lags are a length 2`maxlags+1 lag vector.
  • c is the 2`maxlags+1 auto correlation vectorI
  • line is a Line2D instance returned by plot.
  • b is the x-axis.
Other Parameters:

linestyle : Line2D prop, optional, default: None

Only used if usevlines is False.

marker : string, 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’.