2017-09-05 130 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);