pandas.DataFrame.plot.scatter — pandas 2.2.3 documentation (original) (raw)

DataFrame.plot.scatter(x, y, s=None, c=None, **kwargs)[source]#

Create a scatter plot with varying marker point size and color.

The coordinates of each point are defined by two dataframe columns and filled circles are used to represent each point. This kind of plot is useful to see complex correlations between two variables. Points could be for instance natural 2D coordinates like longitude and latitude in a map or, in general, any pair of metrics that can be plotted against each other.

Parameters:

xint or str

The column name or column position to be used as horizontal coordinates for each point.

yint or str

The column name or column position to be used as vertical coordinates for each point.

sstr, scalar or array-like, optional

The size of each point. Possible values are:

cstr, int or array-like, optional

The color of each point. Possible values are:

**kwargs

Keyword arguments to pass on to DataFrame.plot().

Returns:

matplotlib.axes.Axes or numpy.ndarray of them

Examples

Let’s see how to draw a scatter plot using coordinates from the values in a DataFrame’s columns.

df = pd.DataFrame([[5.1, 3.5, 0], [4.9, 3.0, 0], [7.0, 3.2, 1], ... [6.4, 3.2, 1], [5.9, 3.0, 2]], ... columns=['length', 'width', 'species']) ax1 = df.plot.scatter(x='length', ... y='width', ... c='DarkBlue')

../../_images/pandas-DataFrame-plot-scatter-1.png

And now with the color determined by a column as well.

ax2 = df.plot.scatter(x='length', ... y='width', ... c='species', ... colormap='viridis')

../../_images/pandas-DataFrame-plot-scatter-2.png