pandas.DataFrame.plot.hist#
- DataFrame.plot.hist(by=None, bins=10, **kwargs)[源代码]#
绘制 DataFrame 列的一个直方图。
直方图是数据分布的表示。该函数将 DataFrame 中所有给定的 Series 的值分组到箱中,并在一个
matplotlib.axes.Axes
中绘制所有箱。当 DataFrame 的 Series 处于相似的尺度时,这非常有用。- 参数:
- 通过str 或序列,可选
要分组的 DataFrame 中的列。
在 1.4.0 版本发生变更: 之前,by 被静默忽略,不进行分组。
- binsint, 默认 10
要使用的直方图箱数。
- **kwargs
其他关键字参数在
DataFrame.plot()
中记录。
- 返回:
matplotlib.axes.Axes
返回一个直方图绘图。
参见
DataFrame.hist
为 DataFrame 的 Series 绘制直方图。
Series.hist
用 Series 的数据绘制直方图。
例子
当我们掷骰子6000次时,我们期望每个值大约出现1000次。但当我们掷两个骰子并求和时,分布将会非常不同。直方图可以说明这些分布。
>>> df = pd.DataFrame(np.random.randint(1, 7, 6000), columns=["one"]) >>> df["two"] = df["one"] + np.random.randint(1, 7, 6000) >>> ax = df.plot.hist(bins=12, alpha=0.5)
通过提供参数 `by`(可以是列名,或列名列表)可以生成一个分组直方图:
>>> 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.hist(column=["age"], by="gender", figsize=(10, 8))