2016-05-11 5 views
4

例データはCSV形式のhereです。私は、次の図を得るパンダがヒストグラムにスペースを挿入するのはなぜですか?

figure() 
grp.vis.plot(kind='hist', alpha=.5, normed=True) 
show() 

enter image description here

はなぜパンダは、図中にギャップを挿入され

は、次のコードを考えると?値の範囲は0から7までで、すべてが表現されているので、このようなことが起こる理由はありません。

ありがとうございました!

答えて

4

デフォルト値10でパラメータbinshistにあるので:

grp.vis.plot(kind='hist', alpha=.5, bins=7, normed=True) 

graph

rwidth省略した場合:

grp.vis.plot(kind='hist', alpha=.5, bins=7) 

graph1

Docs

ビン:整数またはarray_like、

任意の整数を指定した場合は、ビン+ 1つのビンエッジがnumpyのバージョン> = 1.3 numpy.histogram()と一貫して、返されます。

ビンがシーケンスの場合、不等間隔のビンがサポートされます。スカラーまたはなし、任意

ビン幅のフラクションとしてバーの相対幅:

デフォルトは10

Rwidthをあります。 Noneの場合は、自動的に幅を計算します。

histt​​ypeが 'step'または 'stepfilled'の場合は無視されます。

デフォルトはNone

オフトピック自己宣伝のビットのために申し訳ありませんが、多分あなたは私のライブラリ physt役に立つかもしれません
+0

画像に意図されたものとは少し異なるものがあることに注意してください。試してみてください:grp.vis.value_counts() –

1

https://github.com/janpipek/phystを参照)ではありません。とりわけ、異なるビニングスキーマを提供します。そのうちの1つ( "整数")は、整数データの自動ビンに適しています。

import pandas as pd 
import physt 

df = pd.read_csv("visanal_so.csv") 
ax = physt.h1(df.vis, "integer").plot(density=True, alpha=0.5) 
ax.set_ylabel("Frequency"); 

What you get

P.S.プロットはオリジナルと似ていますが、@ jezraelが示すものと似ていないことに注意してください。自動パンダのビンニングは、あなたが意図した通りにやや奇妙で、間違いなく動作します。

+0

大変ありがとうございます。私はそれを確かめるでしょう。 – blz

関連する問題