https://stat.ethz.ch/pipermail/r-devel/2013-September/067563.html
Same instructions still apply -- this is a self-subscription list. M On Sep 24, 2013, at 0:42, Eric Malitz <eric.mal...@gmail.com> wrote: > take me off here > > > On Mon, Sep 23, 2013 at 10:31 PM, Gabriel Becker <gmbec...@ucdavis.edu>wrote: > >> Paul, >> >> Thanks for the response. >> >> >> On Mon, Sep 23, 2013 at 7:43 PM, Paul Murrell <p...@stat.auckland.ac.nz >>> wrote: >> >>> <snip> >>> par(bg="white") >>> >>> plot(1:10) >>> recplot = recordPlot() >>> png("bgreplay.png") >>> replayPlot(recplot) >>> dev.off() >>> >>> Would that satisfy your use case ? >> >> Unfortunately it does not, as my use-case is in a caching/dynamic document >> setting. Thus I am capturing plotting from evaluation of an arbitrary piece >> of code within a series of such evaluations. I cannot be guaranteed the >> code doesn't call dev.off() or explicitly create a new device and I >> wouldn't want to clobber any non-white background set in previous code. >> >> I thought putting par(bg="white") after the call to png() (or bg="white" in >> the png call) might work, but it appears that replayPlot is actively >> setting the background to transparent so that didn't fly. >> >> Any other ideas or advice would be appreciated. >> ~G >> >> >>> >>> Paul >>> >>> >>> On 09/14/13 09:17, Gabriel Becker wrote: >>> >>>> Hey all, >>>> >>>> I've run accross what seems to be a bug in the recordPlot/replayPlot >>>> functionality (or at least the lack of a feature which seems pretty >>>> reasonable to expect to be there) >>>> >>>> When drawing to a file-based graphics device (I tested with png()), the >>>> file resulting from calling replayPlot on a recordedplot object does not >>>> contain an identical image to that captured by the same graphics device >>>> when used on the plot that was recorded. >>>> >>>> Reproducible (at least for me on linux) example: >>>> >>>> png("noreplay.png") >>>> plot(1:10) >>>> dev.off() >>>> >>>> plot(1:10) >>>> recplot = recordPlot() >>>> png("withreplay.png") >>>> replayPlot(recplot) >>>> dev.off() >>>> >>>> The resulting png files are attached. You'll notice that the >> noreplay.png >>>> has the expected white background, while withoutreplay.png has no/a >>>> transparent background. >>>> >>>> This seems likely to be related to the note in ?dev.print : >>>> " >>>> Note that these functions copy the _device region_ and not a plot: >>>> the background colour of the device surface is part of what is >>>> copied. Most screen devices default to a transparent background, >>>> which is probably not what is needed when copying to a device such >>>> as âpngâ. >>>> " >>>> >>>> Now this may be as intended because it is "not allowed" to draw >>>> recordedplot objects to devices other than the one they were recorded on >>>> (AFAIK the primary purpose of recordedplot objects is fast redraws >>>> internally), but alas that is what my use-case calls for. Furthermore, >> I >>>> don't think I'm alone in thinking wistfully about how useful it would be >>>> to >>>> have an actual, transportable object class which can fully represent an >> R >>>> plot in any R-based context. >>>> >>>> I'm pretty sure I can compile a patch which does this if it would be >>>> considered, though there would be a delay of a week or two before I >> could >>>> burrow out from under the mound of other stuff I currently need to be >>>> doing >>>> >>>> sessionInfo below, and I have also confirmed that the behavior remains >>>> unchanged in the current trunk. >>>> >>>> Thanks, >>>> ~G >>>> >>>> sessionInfo() >>>> R version 3.0.1 (2013-05-16) >>>> Platform: x86_64-pc-linux-gnu (64-bit) >>>> >>>> locale: >>>> [1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C >>>> [3] LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8 >>>> [5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8 >>>> [7] LC_PAPER=C LC_NAME=C >>>> [9] LC_ADDRESS=C LC_TELEPHONE=C >>>> [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C >>>> >>>> attached base packages: >>>> [1] stats graphics grDevices utils datasets methods base >>>> >>>> loaded via a namespace (and not attached): >>>> [1] compiler_3.0.1 tools_3.0.1 >>>> >>>> >>>> >>>> ______________________________**________________ >>>> R-devel@r-project.org mailing list >>>> https://stat.ethz.ch/mailman/**listinfo/r-devel< >> https://stat.ethz.ch/mailman/listinfo/r-devel> >>> -- >>> Dr Paul Murrell >>> Department of Statistics >>> The University of Auckland >>> Private Bag 92019 >>> Auckland >>> New Zealand >>> 64 9 3737599 x85392 >>> p...@stat.auckland.ac.nz >>> http://www.stat.auckland.ac.**nz/~paul/< >> http://www.stat.auckland.ac.nz/~paul/> >> >> >> >> -- >> Gabriel Becker >> Graduate Student >> Statistics Department >> University of California, Davis >> >> [[alternative HTML version deleted]] >> >> >> ______________________________________________ >> R-devel@r-project.org mailing list >> https://stat.ethz.ch/mailman/listinfo/r-devel > > [[alternative HTML version deleted]] > > ______________________________________________ > R-devel@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-devel [[alternative HTML version deleted]]
______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel