Python:来自DataFrame的简单直方图Gone Awry

时间:2017-06-21 19:37:37

标签: python pandas dataframe histogram

我有一个看起来像这样的Pandas DataFrame:

    pageviews   type
0   48.0    original
1   181.0   licensed
2   50.0    original
3   17.0    original
...

我想创建两个直方图,一个用于"原始"类型和一个用于"许可"类型。

所以我这样做:

ax = df.hist(by='type')
plt.show()

我明白了:

enter image description here

这是一个开始,但它已经缩小了,我不知道为什么高度是均匀的(它只是一个矩形)。我认为这可能与我缩小的方式有关,所以我跑了:

for plot in ax:
    plot.set_xlim(0, 400000)

然后我得到了这个,这似乎也没有好转:

enter image description here

我只想要一个正常的每种类型的综合浏览量直方图:(

有什么想法吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

试试这个:

ax = df.groupby("type").sum().plot(kind="bar")
ax2 = ax.twinx()
for r in ax.patches[len(df):]:
    r.set_transform(ax2.transData)
ax2.set_ylim(0, 2);