2016-06-24 2 views
2

私は幾分新しくRに慣れていて、ggplotが好きです。プロットに使うのはすべてだから、Rのベースプロットに必要なすべての古い構文がわかりません。私はpROC :: rocを実行しているので、ggplotで出力をプロットしたいと思います(私はそれをどのように微調整することができます)。rのベースプロットをggplotオブジェクトに変換できますか?

size <- 100 
response <- sample(c(0,1), replace=TRUE, size=size) 
predictor <- rnorm(100) 
rocobject <- pROC::roc(response, predictor,smooth=T) 
plot(rocobject) 

は(これは私の質問ではありません)私は出力からのデータフレームを作成し、ggplotを使用することができ、代わりにggplot使用するには、次のように私はすぐにプロットを得ることができます。私が知りたいのは、上のコードで作ったプロットをどういうわけか 'ggplot'に自動的に変換して、ggplotで何をしたいのですか?私は何度も調べてきたので、この「基本的な」質問に対する答えを見つけることはできないようです。ありがとう!!

+0

、何の' ggplot' – akrun

+0

多かれ少なかれはありません答えはいいえだ。 'ggplot2'はggplot2とは別の' grid'グラフィックスシステム上に構築されています。 'gridGraphics'パッケージを使用して、グラフの「マトリックス」内のベースグラフと' grid'グラフを組み合わせることが可能になりました。 – lmo

+1

Paul murrelは、ベースをグリッドに変換するいくつかの作業を行っていました...何に近いかhttps://github.com/pmur002/gridgraphics –

答えて

1

いいえ、残念ながらこれはできません。

実際の質問には答えませんが、ggplotを使用して構築することは実際には難しくありません。

あなたのオリジナルのプロット:ggplotで

plot(rocobject) 

enter image description here

: `methods`で

library(ggplot2) 
df<-data.frame(y=unlist(rocobject[1]), x=unlist(rocobject[2])) 
ggplot(df, aes(x, y)) + geom_line() + scale_x_reverse() + geom_abline(intercept=1, slope=1, linetype="dashed") + xlab("Specificity") + ylab("sensitivity") 

enter image description here

関連する問題