pandas.plotting.andrews_curves

pandas.plotting.andrews_curves(frame, class_column, ax=None, samples=200, color=None, colormap=None, **kwargs)[source]

Generate a matplotlib plot of Andrews curves, for visualising clusters of multivariate data.

Andrews curves have the functional form:

f(t) = x_1/sqrt(2) + x_2 sin(t) + x_3 cos(t) +

x_4 sin(2t) + x_5 cos(2t) + …

Where x coefficients correspond to the values of each dimension and t is linearly spaced between -pi and +pi. Each row of frame then corresponds to a single curve.

Parameters
frame:DataFrame

Data to be plotted, preferably normalized to (0.0, 1.0).

class_column:Name of the column containing class names
ax:matplotlib axes object, default None
samples:Number of points to plot in each curve
color:list or tuple, optional

Colors to use for the different classes.

colormap:str or matplotlib colormap object, default None

Colormap to select colors from. If string, load colormap with that name from matplotlib.

**kwargs

Options to pass to matplotlib plotting method.

Returns
class:matplotlip.axis.Axes

Examples

>>> df = pd.read_csv(
...     'https://raw.github.com/pandas-dev/'
...     'pandas/master/pandas/tests/io/data/csv/iris.csv'
... )
>>> pd.plotting.andrews_curves(df, 'Name')
../../_images/pandas-plotting-andrews_curves-1.png

© 2008–2021, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/1.3.4/reference/api/pandas.plotting.andrews_curves.html