Tobias Sing
2008-Apr-14 18:20 UTC
[R] odfWeave: in multi-page plots only last page appears in document
Dear all, Max, first of all, many thanks for providing the odfWeave package. My problem: Whenever I have multiple plots in one single chunk of my ODF file, only the last plot gets shown. The problem can be reproduced with this toy example (to be used in an ODF file together with odfWeave -- I'm using the newest version 0.7.3): <<plot1, echo=FALSE, fig=TRUE>>for (i in 1:3) { plot(1,1, main=paste('Plot',i)) } @ I thought the solution (I hope there is one) might be found with setImageDefs (e.g. by setting type and/or device to postscript and working with the 'onefile' argument) , but I couldn't solve the problem. So maybe this is not the right idea for a solution. In any case, here is my current getImageDefs:> getImageDefs()$type [1] "png" $device [1] "png" $plotHeight [1] 480 $plotWidth [1] 480 $dispHeight [1] 5 $dispWidth [1] 5 $args list() Any help appreciated. Kind regards, Tobias
Sarah Goslee
2008-Apr-14 18:32 UTC
[R] odfWeave: in multi-page plots only last page appears in document
If you ran that code outside ODFWeave, you'd only get one plot, so why would you expect to get more within ODFWeave? for (i in 1:3) {> plot(1,1, main=paste('Plot',i)) > }You need to add some sort of par() command, or use layout(), to create a single plot that contains all three of the plots created by the loop. par(mfrow=c(2,2)) for (i in 1:3) { plot(1,1, main=paste('Plot',i)) } for example. Or, if you want ODFWeave to handle placement, then you need to break that into three separate plots. Sarah On Mon, Apr 14, 2008 at 2:20 PM, Tobias Sing <tobias.sing at gmail.com> wrote:> Dear all, > > Max, first of all, many thanks for providing the odfWeave package. > > My problem: Whenever I have multiple plots in one single chunk of my > ODF file, only the last plot gets shown. The problem can be reproduced > with this toy example (to be used in an ODF file together with > odfWeave -- I'm using the newest version 0.7.3): > > <<plot1, echo=FALSE, fig=TRUE>>> for (i in 1:3) { > plot(1,1, main=paste('Plot',i)) > } > @ >-- Sarah Goslee http://www.functionaldiversity.org