Series.plot(self, kind='line', ax=None, figsize=None, use_index=True, title=None, grid=None, legend=False, style=None, logx=False, logy=False, loglog=False, xticks=None, yticks=None, xlim=None, ylim=None, rot=None, fontsize=None, colormap=None, table=False, yerr=None, xerr=None, label=None, secondary_y=False, **kwds)[source]

Make plots of Series using matplotlib / pylab.

New in version 0.17.0: Each plot kind has a corresponding method on the Series.plot accessor: s.plot(kind='line') is equivalent to s.plot.line().

  • ‘line’ : line plot (default)

  • ‘bar’ : vertical bar plot

  • ‘barh’ : horizontal bar plot

  • ‘hist’ : histogram

  • ‘box’ : boxplot

  • ‘kde’ : Kernel Density Estimation plot

  • ‘density’ : same as ‘kde’

  • ‘area’ : area plot

  • ‘pie’ : pie plot

axmatplotlib axes object

If not passed, uses gca()

figsizea tuple (width, height) in inches
use_indexbool, default True

Use index as ticks for x axis

titlestring or list

Title to use for the plot. If a string is passed, print the string at the top of the figure. If a list is passed and subplots is True, print each item in the list above the corresponding subplot.

gridbool, default None (matlab style default)

Axis grid lines


Place legend on axis subplots

stylelist or dict

matplotlib line style per column

logxbool or ‘sym’, default False

Use log scaling or symlog scaling on x axis .. versionchanged:: 0.25.0

logybool or ‘sym’ default False

Use log scaling or symlog scaling on y axis .. versionchanged:: 0.25.0

loglogbool or ‘sym’, default False

Use log scaling or symlog scaling on both x and y axes .. versionchanged:: 0.25.0


Values to use for the xticks


Values to use for the yticks

rotint, default None

Rotation for ticks (xticks for vertical, yticks for horizontal plots)

fontsizeint, default None

Font size for xticks and yticks

colormapstr or matplotlib colormap object, default None

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

colorbarbool, optional

If True, plot colorbar (only relevant for ‘scatter’ and ‘hexbin’ plots)


Specify relative alignments for bar plot layout. From 0 (left/bottom-end) to 1 (right/top-end). Default is 0.5 (center)

tablebool, Series or DataFrame, default False

If True, draw a table using the data in the DataFrame and the data will be transposed to meet matplotlib’s default layout. If a Series or DataFrame is passed, use passed data to draw a table.

yerrDataFrame, Series, array-like, dict and str

See Plotting with Error Bars for detail.

xerrsame types as yerr.
labellabel argument to provide to plot
secondary_ybool or sequence of ints, default False

If True then y-axis will be on the right

mark_rightbool, default True

When using a secondary_y axis, automatically mark the column labels with “(right)” in the legend


Options to pass to matplotlib plotting method

matplotlib.axes.Axes or numpy.ndarray of them


  • See matplotlib documentation online for more on this subject

  • If kind = ‘bar’ or ‘barh’, you can specify relative alignments for bar plot layout by position keyword. From 0 (left/bottom-end) to 1 (right/top-end). Default is 0.5 (center)

Scroll To Top