pandas.DataFrame.plot.scatter#
- DataFrame.plot.scatter(x, y, s=None, c=None, **kwargs)[源代码]#
创建一个散点图,其中标记点的大小和颜色不同。
每个点的坐标由两个数据框列定义,并用填充圆圈表示每个点。这种图表有助于查看两个变量之间的复杂相关性。例如,点可以是自然2D坐标(如地图中的经度和纬度),或者在一般情况下,任何可以相互绘制的度量对。
- 参数:
- xint 或 str
要作为每个点的水平坐标的列名或列位置。
- yint 或 str
要作为每个点的垂直坐标的列名或列位置。
- sstr, 标量或类数组, 可选
每个点的大小。可能的值有:
用于标记大小列名称的字符串。
一个单一的标量,因此所有点的尺寸相同。
一个标量的序列,将递归地用于每个点的大小。例如,当传递 [2,14] 时,所有点的大小将交替为 2 或 14。
- cstr, int 或类数组, 可选
每个点的颜色。可能的值有:
一个通过名称、RGB或RGBA代码引用的单色字符串,例如 ‘red’ 或 ‘#a98d19’。
一系列通过名称、RGB 或 RGBA 代码引用的颜色字符串,这些颜色将递归地用于每个点的颜色。例如 [‘绿色’,’黄色’] 所有点将交替填充绿色或黄色。
一个列名或位置,其值将根据色图用于为标记点着色。
- **kwargs
传递给
DataFrame.plot()
的关键字参数。
- 返回:
matplotlib.axes.Axes
或它们的 numpy.ndarray包含散点图的 matplotlib 轴。
参见
matplotlib.pyplot.scatter
使用多种输入数据格式的散点图。
例子
让我们看看如何使用 DataFrame 列中的值的坐标绘制散点图。
>>> 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")
现在还可以根据一列来确定颜色。
>>> ax2 = df.plot.scatter( ... x="length", y="width", c="species", colormap="viridis" ... )