【问题标题】:Pandas matplotlib boxplot with mean trendline具有平均趋势线的 Pandas matplotlib 箱线图
【发布时间】:2019-03-19 07:58:06
【问题描述】:

我想在我的箱线图中添加一条趋势线来显示平均值。有人用 pandas 弄清楚了吗?

我的代码是这样的:

fig, ax = plt.subplots(figsize=(10,5))
ax1 = df.boxplot(column='val', by='DATE',ax=ax)

结果我得到了一个漂亮的箱线图。

现在如何添加一条线来连接平均值?

谢谢。

【问题讨论】:

  • 你将如何生成这样的线,只需将平均值与直线连接起来?一些插值?
  • 你能附上数据的链接吗?

标签: python pandas matplotlib boxplot


【解决方案1】:

你的意思是你想绘制手段?如果是这样,您可以将showmeans = True 传递给箱线图,它将使用标记来显示(算术)平均值。我个人的看法是这样看起来会比在箱线图上叠加一条线更好(这也是可以做到的):

import pandas as pd
import numpy as np

data = pd.DataFrame(
    {
        'date_id': np.tile(pd.date_range('2018-10-01', '2018-10-5').astype(str), 10),
        'value': np.random.randn(50)
    }
)

data.boxplot(column = 'value', by = 'date_id', showmeans = True)

给予:

【讨论】:

  • 谢谢,但是是的,我想连接这些标记,即在箱线图上叠加一条线。你知道怎么做吗?
  • 连接手段可以通过添加meanline = True参数来实现。另见the documentationmatplotlib.pyplot.boxplot
猜你喜欢
  • 2021-03-03
  • 1970-01-01
  • 2019-06-15
  • 1970-01-01
  • 2021-05-08
  • 2016-08-06
  • 2020-11-28
相关资源
最近更新 更多