pandas.DataFrame.plot.box#

DataFrame.plot.box(by=None, **kwargs)[源代码]#

制作DataFrame列的框图。

盒图是一种通过四分位数以图形方式描述一组数字数据的方法。该框从数据的Q1到Q3四分位数值延伸,在中位数(Q2)处有一条线。胡须从长方体的边缘延伸,以显示数据的范围。胡须的位置默认设置为距离长方体边缘的1.5*IQR(IQR=Q3-Q1)。离群点是那些超过胡须末端的点。

有关更多详细信息,请参阅维基百科的 boxplot

使用此图表时需要考虑的一点是,方框和胡须可以重叠,这在绘制小数据集时非常常见。

参数
by字符串或序列

要分组的DataFrame中的。

在 1.4.0 版更改: 在此之前, by 被静默忽略且不进行分组

**kwargs

中记录了其他关键字 DataFrame.plot()

退货
matplotlib.axes.Axes 或者数不胜数。

参见

DataFrame.boxplot

绘制框图的另一种方法。

Series.plot.box

从Series对象绘制框图。

matplotlib.pyplot.boxplot

在matplotlib中绘制一个框图。

示例

使用四列随机生成的数据从DataFrame绘制框图。

>>> data = np.random.randn(25, 4)
>>> df = pd.DataFrame(data, columns=list('ABCD'))
>>> ax = df.plot.box()
../../_images/pandas-DataFrame-plot-box-1.png

您还可以在指定 by 参数(可以接受列名,或者列名的列表或元组):

在 1.4.0 版更改.

>>> age_list = [8, 10, 12, 14, 72, 74, 76, 78, 20, 25, 30, 35, 60, 85]
>>> df = pd.DataFrame({"gender": list("MMMMMMMMFFFFFF"), "age": age_list})
>>> ax = df.plot.box(column="age", by="gender", figsize=(10, 8))
../../_images/pandas-DataFrame-plot-box-2.png