2017-09-05 2 views
0

の平日/時間、私はまさにこのプロットのように、平日の周波数と一日の時間をプロットバブルプロットを作成しようとしている: https://i.stack.imgur.com/TP4ZF.jpg データがパンダであります次の形式のデータフレーム:バブルプロットパンダ(あるいはPythonの)日

weekday hour freq 
    0 0 22710 
    0 1 22685 
    0 2 21673 
    0 3 22276 
    0 4 21531 
    0 ... ... 
    0 23 12343 
    ... ... ... 
    6 23 34231 

私は次のことを試してみましたが、それは全く動作しませんでした:

df.plot.scatter(x='hour', y='weekday', s=df['freq']); 

は、生成されたグラフは、右の軸を持っているようだが、一つの大きな青色で覆われています。長方形(https://i.stack.imgur.com/2BLzR.png)。 サイズ引数が省略されても、どちらも機能しません(一様に塗りつぶされた散布図または点線図が示されています)。

答えて

1

あなたのサイズのパラメータは大きすぎます。それを拡大縮小、多分

norm = max(df['freq']) 
df.plot.scatter(x='hour', y='weekday', s=df['freq']/norm); 
+0

乾杯!ちょうどそれを考え出した。それを拡大するmatplotlibが必要です;) – b0nzo

0

そして、ちょうどこの質問を投稿(と、かなりの頭痛の原因となった研究の時間)の後のようなものは、私は答えを見つけました。 Matplotlibs散布図のサイズパラメータは、絶対値が大きい場合には作成されず、拡大または拡大されないため、チャート全体をカバーする「青いブロック」領域です。コードを変更して(スケーリングファクタを追加する)、素敵なチャートが生成されます:

df.plot.scatter(x='hour', y='weekday', s=df['freq']*0.001); 
関連する問題