2017-11-07 3 views
1

私は太陽系ダイナミクスのシミュレーションをいくつか行い、このプロジェクトを自分自身でいくつかのpython/pandasを教えるための言い訳として使用しています。得られたデータセットは1000個を少し上回り、軌道の傾き、偏心などの値は、それぞれの物体に対応しています。pandas:ビン内のプロット平均値 - 必要な書式設定

私は、パンダを使用して、結果データの〜1000個のボディ(テスト粒子)の平均軌道傾斜を半長軸の関数として調べようとしています。

はこれまでのところ、私が行ってきたことはこれです:

1)データフレームに

DF = pd.read_csv( 'final.csv')

をデータを読みます2)データを半長軸値の範囲に制限する(粒子がシミュレーションの過程で拡散するが、分析を制限したい)

cf = df [df.a.between 30,80)]

3)は、ビンの所定数

cf.groupby(pd.cut(cf.a、80))[ 'INC'](平均)。プロットの傾きの平均値をプロット()

これは許容されるプロットを作成しますが、書式設定すると2つの問題があります。画面が完全に最大化されない限り、x軸に沿った数字は一緒に盛り上がり、重なります。彼らはまた私が見たいと思っているものでもありません。ビンの最大値と最小値が表示されます。

pandas output from above command

Iプロットへの値(X =なし、xticks =なし)()上記文字列の一部を通過しようとしたが、これは、得られたプロットに影響を及ぼしませんでした。私はこれをやっている方法でプロット/アウトプットコントロールが可能ですか?私はこのような何かをしたい場合は

おかげで、

G

+0

xticksを回転する方法については、dupeを参照してください。 –

+0

@cᴏʟᴅsᴘᴇᴇᴅこれは、ダニの回転についてのものではありません。ビンごとにグループ分けされたプロットに対して、通常の標準的なティックラベルを得ることです。混乱を避けるために、Gleenさん、この点を質問で明確にすることができますか?また、問題の[mcve]を提供するのに役立ちます(「再現性の良いパンダの例を作る方法」(https://stackoverflow.com/questions/20109391/how-to-make-good-reproducible-pandas-examplesを参照)。 ))。 – ImportanceOfBeingErnest

+0

@ImportanceOfBeingErnestあなたを信じて、嘘を再開しました。より適切な房を見つけたら、もう一度閉じてください。 –

答えて

2

は、私が直接matplotlibのために行きます。 私は、このサンプル・データを小さな例を示します:

df = pd.DataFrame([[1, 2], [2, 7], [3, 6], [4,7], [5,3]], columns=['A', 'B']) 

代わりpd.cutでそれを切断する、私はnp.linspaceとカットを作ります。それをプロットする ので

bins = np.linspace(0,5,4) 
group = df.groupby(pd.cut(df.A, bins)) 

、私はつまりあなたの場合、あなたが不足しているデータの取り扱いに注意する必要があり、ビン

plt.plot(plot_centers, plot_values) 

plot_centers = (bins [:-1] + bins [1:])/2 
plot_values = group.B.mean() 

とプロットの真ん中をしたいですデータが入っていないビンがあります。その場合は、を使用して、すべてNaNsを0にすることができます。

plot_values = group.B.mean().fillna(0) 
関連する問題