【发布时间】:2017-03-25 07:59:36
【问题描述】:
我在 pandas df 中有一个表,其中有 avg_sp 和 count1 作为列。我绘制了一个按范围分组的条形图,还为顶部的值添加了一个 for 循环。
plt.figure(figsize=(12, 6))
df2 = df.groupby(pd.cut(df['avg_sp'], range(0, 110,10))).sum() ['count1'].plot(kind='bar')
plt.xlabel('avg_sp')
plt.ylabel('browse count')
for p in df2.patches:
df2.annotate(str(p.get_height()), (p.get_x() * 1.005, p.get_height() * 1.005),rotation=90)
但是我没有得到正确的结果,如下图,它与x轴混合,有什么办法可以把数字调高一点吗?
我添加了 pirsquared 建议的代码,但它只影响顶部栏,其他保持不变。
【问题讨论】:
-
@lanery 我希望这些值垂直倾斜
-
您可以将参数
rotation=90添加到ax.annotate。 -
@lanery 我补充说,检查我的新情节,没有。相互混合
-
@MaxU 你能帮帮我吗?
标签: python python-2.7 python-3.x pandas matplotlib