2017-07-04 17 views
0

私はデータフレームのサブセットをしようとしていますのサブセットで正しいプロットをレンダリングし、棒グラフ作成するためのplotly使用していない:resort_posの頭とresort_posのサブセットがされている以下Plotlyデータフレーム

resort_pos %>% subset(resort + pos > 5000)%>% 
mutate(pos_percentage = (pos*100)/(resort+pos)) %>% 
mutate(Source = as.factor(src)) %>% 
plot_ly(x= ~Source,y= ~pos_percentage, type = "bar") 

>>head(resort_pos) 
src resort positive 
1 ABL 45686  7352 
2 AGR  96  0 
3 AMD 15857 21077 
4 BAM 3806 141275 
5 BBI 416  54 
6 BDQ  5  0 

>>head(resort_pos %>% subset(resort + pos > 5000)%>% 
    mutate(pos_percentage = (pos*100)/(resort+pos)) %>% 
    mutate(Source = as.factor(src))) 

src resort positive pos_percentage Source 
1 ABL 45686  7352  13.86176 ABL 
2 AMD 15857 21077  57.06666 AMD 
3 BAM 3806 141275  97.37664 BAM 
4 BIL 73847 142660  65.89163 BIL 
5 BLR 52711 192061  78.46527 BLR 
6 BNO 44069 71089  61.73171 BNO 
ここ

は出力です:

enter image description here

xはすべて異なる値を取りますが、サブセットされたデータフレームではyが使用できないため、空白が表示されます。どうすればこれを回避できますか?

+0

再現可能な例を示してください。私は 'resort_pos%>%filter((resort + pos)> 5000)%>%' – akrun

+0

を別のデータフレームに保存しました。 17の観測値を持ち、オリジナルのデータフレームは47です。サブセット化されたデータフレームにプロットして使用しましたが、依然として問題はあります。編集にデータフレームの頭部を含める。 –

答えて

0

do droplevels()結果のdata.frameに行います。

+0

それはうまくいった!ありがとう。 ggplotを使った作図にはこの問題はないと不思議です。 –