如何为Pandas DataFrame.plot.hist分组直方图添加智能标题
解决方法
直接通过获取绘图返回的Axes对象数组,遍历修改每个子图的标题即可:
import matplotlib.pyplot as plt # 执行绘图并保存返回的Axes对象 axes = df.plot.hist(by='quality', figsize=(10,30)) # 遍历所有子图,动态修改标题 for ax in axes.flat: # 获取原标题(即对应quality的数值) q_value = ax.get_title() # 设置新标题 ax.set_title(f"Quality: {q_value}") # 调整布局并展示 plt.tight_layout() plt.show()
说明
df.plot.hist(by='quality')会返回一个Axes对象的二维数组(行数为数据集非quality列的数量,列数为quality的唯一值数量),用axes.flat可将其展平为一维,方便逐个处理子图。- 每个子图的默认标题就是对应的quality数值,直接提取后拼接成目标格式即可,能自动适配quality的所有现有取值。
内容的提问来源于stack exchange,提问作者noogrub
相关产品推荐
相关产品推荐

