【问题标题】:How to plot average in y axis for each x value in pyplot如何为pyplot中的每个x值在y轴上绘制平均值
【发布时间】:2018-12-26 17:33:54
【问题描述】:

我正在使用 matplotlib.pyplot 来可视化我的数据。在熊猫中,我有“小时”和'favourite_count' 列。小时的值从 0 到 24。favourite_count 是一个连续变量。我想要的是绘制一个条形图,显示每小时的平均 favourite_count。目前我正在绘制一个基本图表,如下所示。在 y 轴上,它绘制了每小时 favourite_count 的总和/最大值(我不确定是哪个)。如何绘制可视化小时与average_favorite_count_for_hour 的图表

plt.bar(result['hour'], result['favourite_count'])
plt.xlabel('hour')
plt.ylabel('favourite_count')
plt.title('hour vs popularity', y=1.1)
plt.grid()
plt.show()

【问题讨论】:

  • 你可以使用groupby命令然后绘图

标签: python matplotlib


【解决方案1】:

通过在绘图前添加这条线来执行平均步骤:

result = result.groupby('hour').mean()

然后绘制如下:

plt.bar(result.index, result['favourite_count'])
plt.xlabel('hour')
plt.ylabel('favourite_count')
plt.title('hour vs popularity', y=1.1)
plt.grid()
plt.show()

注意 x 轴现在是索引。

【讨论】:

    猜你喜欢
    • 2021-01-17
    • 1970-01-01
    • 2021-01-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-18
    • 2023-01-30
    • 1970-01-01
    相关资源
    最近更新 更多