我有一个简短的例程,它使用gridExtras包中的grid.arrange函数来排列ggplot和grid图形。我需要在我的Sweave文档中渲染我的例程(名义上使用grid.draw打印,或者返回网格对象作为选项)的输出。我不知道如何做到这一点,因为说我一直在使用“打印”并不像纯ggplot图形那样工作。我试过了:
g <- ggkm(survfit.object, returns=T)
print(g)
其中g是grid.arrange创建的对象,并且具有类
> class(g)
[1] "frame" "gTree" "grob" "gDesc"
任何帮助将不胜感激
作者Abhijit
答案 0 :(得分:3)
在创建对象时打印对象而不是打印已保存的对象似乎有效,但我无法解释原因......
\documentclass{article}
\begin{document}
<<>>=
library(ggplot2)
library(gridExtra)
d <- data.frame(x=1:10,y=1:10,z=runif(10))
g1 <- qplot(x,y,data=d)
g2 <- qplot(x,z,data=d)
@
<<fig=TRUE,results=hide>>=
print(grid.arrange(g1,g2,ncol=2))
@
\end{document}