私は 2 つの gList オブジェクト (グリッド) を持っています。
grid.draw(plot1)
grid.draw(plot2)
しかし、これらをpdfで並べて表示したいのです。何かのようなもの
pdf(test.pdf)
par(mfrow=c(1,2))
plot(1:10)
plot(10:1)
dev.off
しかし、これはうまくいきません。
オブジェクトを配置するには、ビューポート内でgrid
使用できます。grid.layout
ここに例があります。
pushViewport(plotViewport(layout=grid.layout(1, 2),gp=gpar(cex=2)))
pushViewport(plotViewport(layout.pos.col=1))
grid.draw(getPlot())
popViewport()
pushViewport(plotViewport(layout.pos.col=2, clip="on"))
grid.draw(getPlot(col.fill='black',col.text='red',text='Rouge',x=0))
popViewport()
popViewport()
これgetPlot
は a を返す関数gList
です。
getPlot <- function(col.fill="red",col.text='black',text="Noir",x=1){
rect1 <- rectGrob(gp=gpar(fill=col.fill))
text1 <- textGrob(text,gp=gpar(col=col.text))
text2 <- textGrob("&", x=x,gp=gpar(col=col.text))
gList(rect1,text1,text2)
}