I have following code which works as is, but does not work when cache=T
Changing device does not make a difference (default, tikz, cairo)
% \SweaveOpts{fig.path=cache/figure/plot-,cache.path=cache/data/data-,fig.align=center,external=TRUE,fig.show=hold,cache=TRUE,echo=FALSE,pdfcrop=TRUE}
<<message=F,fig.width=9,fig.height=6,out.width=\textwidth,cache=F>>=
grid.newpage()
pushViewport(viewport(layout = grid.layout(2,9)))
d <- ncol(rTSc)
p <- ggplot(melt(coveig),aes(1:d,value,group=variable,col=variable)) +
geom_line() + labs(x="index",y="eigenvalue") +
opts(legend.position = "none")
print(p, vp=viewport(layout.pos.row=1,layout.pos.col=1:4))
p <- ggplot(melt(coreig),aes(1:d,value,group=variable,col=variable)) +
geom_line() + labs(x="index",y="eigenvalue")
print(p, vp=viewport(layout.pos.row=1,layout.pos.col=5:9))
p <- ggplot(melt(coveig.cs),aes(1:d,value,group=variable,col=variable)) +
geom_line() + labs(x="index",y="cumulative eigenvalue") +
opts(legend.position = "none")
print(p, vp=viewport(layout.pos.row=2,layout.pos.col=1:4))
p <- ggplot(melt(coreig.cs),aes(1:d,value,group=variable,col=variable)) +
geom_line() + labs(x="index",y="cumulative eigenvalue")
print(p, vp=viewport(layout.pos.row=2,layout.pos.col=5:9))
@
Why would this be the case?
Any ideas?
Thanks!
Seems like redefining
pis what’s borking up the cache. Try saving the images as seperate plots, and then push them to the viewport one at a time. (It also makes for clearer code).