Groupby 图 - 包括子组名称

Posted

技术标签:

【中文标题】Groupby 图 - 包括子组名称【英文标题】:Groupby Plot - Include Subgroup Name 【发布时间】:2019-12-06 08:03:05 【问题描述】:

我希望根据第三列的 groupby 绘制时间序列的两列。它或多或少按预期工作,但我无法确定输出中绘制的是哪个子组,因为它不包含在图例中或输出图中的任何其他位置。

有没有办法在输出的图表中包含子组名称?

这是我在数据框上尝试的如下:

dataframe

awareness.groupby('campaign_name')['sum_purchases_value','sum_ad_spend'].plot(figsize=(20,8), legend=True);

【问题讨论】:

【参考方案1】:

试试这个:

grouped = awareness.groupby('campaign_name')
titles = [name for name,data in grouped]
plots = grouped['sum_purchases_value',
                'sum_ad_spend'].plot(figsize=(20,8), legend=True)

for plot, label in zip(plots, titles):
    plot.set(title = label)

pandas plot 函数返回一系列 matplotlib 子图对象,因此使用 for 循环您可以自定义任何您喜欢的内容(x 标签、y 标签、字体大小等)

【讨论】:

欢迎来到 Stack Overflow!对网站的首次贡献。 谢谢!这些年来,我当然从这个网站得到了很多帮助,所以现在是我开始支付它的时候了。

以上是关于Groupby 图 - 包括子组名称的主要内容,如果未能解决你的问题,请参考以下文章

Pandas Groupby:两个子组都存在的选择

pandas-groupby子组的频率计算,新行的插入和列的重新排列

Linq包括在嵌套组中,通过查询

Pandas 按 groupby 求和,但不包括某些列

带 groupby 的条形图

如何在python中的groupby中为lambda函数设置名称标题[重复]