Pandas 中的额外条形图?

Posted

技术标签:

【中文标题】Pandas 中的额外条形图?【英文标题】:Extra set of bars on plot in Pandas? 【发布时间】:2018-12-01 13:04:01 【问题描述】:

我想使用 Pandas 创建一个图,以显示特定工作日的商品价格标准偏差(在我的例子中,一周中有 6 个相关天,每个天在 x 轴上显示为 0-5)。

它似乎有效,但是在每个标准差条旁边还有另一组较小的条,其值也为 0-5。

我认为这意味着我也意外地绘制了星期几。

我怎样才能摆脱这些较小的条形而只显示标准偏差条形?

sales_std=sales_std[['WeekDay','price']].groupby(['WeekDay']).std()
    .reset_index()

这是我尝试绘制图表的地方:

p = sales_std.plot(figsize= 
(15,5),legend=False,kind="bar",rot=45,color="orange",fontsize=16, 
yerr=sales_std);
p.set_title("Standard Deviation", fontsize=18);
p.set_xlabel("WeekDay", fontsize=18);
p.set_ylabel("Price", fontsize=18);
p.set_ylim(0,100);

Resulting Bar Plot:

【问题讨论】:

【参考方案1】:

您正在同时绘制WeekDayprice(即绘制整个Dataframe)。为了仅显示 price 的条形图,您需要在给定 WeekDay 的情况下绘制 Series 作为索引(因此在 groupby() 之后不需要 reset_index())。

# you don't need `reset_index()` in your code
sales_std=sales_std[['WeekDay','price']].groupby(['WeekDay']).std()
sales_std['price'].plot(kind='bar')

注意:我故意省略了代码中的图形样式部分,以专注于解决问题。

【讨论】:

以上是关于Pandas 中的额外条形图?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Pandas 绘制条形图?

在 Pandas 条形图上用值注释条形

Python Pandas 中的聚集堆积条形图 [关闭]

Pandas:带有两个条形图和两个 y 轴的条形图

用 Pandas 上的值注释条形图(在 Seaborn factorplot 条形图上)

将带有次 y 轴的 pandas 条形图的图例放在条形前面