0
ggplotとdata.tableを併用しようとすると、私はバグのような奇妙な動作を発見しました。ggplot facet_grid data.table order bug
data.table(setkey(data、V1、V2 ..)を使用)で設定した行の順序によって、facet_gridsは完全に異なります。ここで
は作業facet_gridの例である:
setkey(dat.rel,FINISH_TIME_BUFFER) #Set Order of Rows according t FINISH_TIME_BUFFER
ggplot(dat.rel)+ #Make Plot
aes(x=dat.rel$INdex,y=dat.rel$GWorkerMissing)+
scale_colour_gradientn(colours=rainbow(10),trans="log",breaks=c(1,100,500,10000))+
geom_point(aes(color=dat.rel$MAX_RUNTIME_IN_SECONDS),size=10,alpha=0.7)+
facet_grid(~ dat.rel$FINISH_TIME_BUFFER)+
geom_text(aes(label=dat.rel$FINISH_TIME_BUFFER),size=4)
結果であること:私は今
setkey(dat.rel,INdex)
との最初の行に置き換えた場合
data.tableをIndexで注文すると、結果は次のようになります。
あなたはすべての点でgeom_text上で見ることができるように、FINISH_TIME_BUFFERは、それぞれのグリッドに正しく割り当てられていません。
ggplotにはバグがあるようですが、それが私のせいではないことを確かめるために、ここで試してみましょう。
すべての 'dat.rel $'を削除してみてください。 'aes()'の中にデータセットを指定する必要はありません。 – kitman0804
それで、ありがとう!つまり、ggplotは内部的には私が推測するdata.tableのコピーで動作します。 – EddyXorb
ggplotに 'dat.rel'(' ggplot(dat.rel)+ ... ')を使用するように指示したからです。 – kitman0804