【发布时间】:2014-12-01 01:36:19
【问题描述】:
我想绘制以下dataset(列maxnet)的分布。
如果我使用 Pandas DataFrame 在 Python 中执行以下操作:
df['maxnet'].hist(bins=10,range=(5,11), grid=False, alpha=0.3, histtype="stepfilled")
我得到下图:
如您所见,我没有将 x 轴值置于每个条形下方的中心。我希望 x 值 (6, 7, 8, 9, 10) 在条形下方居中。我该怎么做?
另外,如果我想更改 (Dec6、Dec7、Dec8、Dec9、Dec10) 的 x 轴标签,仍然在每个条形下方居中,我该怎么做?
【问题讨论】:
-
你的数据是什么?每个条代表一个箱,因此条的位置取决于箱的位置。如果 bin 不在这些值的中心,那么将刻度线放在条的中间会产生误导。
-
基本上,我想绘制数据集中数字6、7、8、9和10的出现次数。
-
为此,如果数据集的不同值数量相对较少,您最好使用
df['maxnet'].value_counts()获取每个值的频率,然后使用它来制作条形图。 -
@BrenBarn 是的,你是对的!我解决了我的问题。谢谢
-
很好的问题,我检查了 pandas 文档页面,没有任何线索。连演示情节都断了。