Thanks, Paul, that's useful information. Peter
Paul Murrell wrote: > Hi > > > Peter Ehlers wrote: > >> >>Paul Murrell wrote: >> >> >>>Hi >>> >>> >>>Duncan Murdoch wrote: >>> >>> >>>>On 3/23/2006 10:46 AM, Gabor Grothendieck wrote: >>>> >>>> >>>> >>>>>On 3/23/06, Duncan Murdoch <[EMAIL PROTECTED]> wrote: >>>>> >>>>> >>>>> >>>>>>On 3/23/2006 10:29 AM, Gabor Grothendieck wrote: >>>>>> >>>>>> >>>>>> >>>>>>>On 3/23/06, Duncan Murdoch <[EMAIL PROTECTED]> wrote: >>>>>>> >>>>>>> >>>>>>> >>>>>>>>On 3/23/2006 7:35 AM, Thomas Steiner wrote: >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>>a) How can I set the recording of all windows()-history forever to >>>>>>>>>"true"? I want something like windows(record = TRUE) but not >>>>>>>>>just for >>>>>>>>>the window that opens then, but for all windows I will open ever. >>>>>>>> >>>>>>>> >>>>>>>>options(graphics.record=TRUE) >>>>>>>> >>>>>>>>will make that happen for the rest of the session. To really >>>>>>>>make it >>>>>>>>happen forever, you need to put this line in your Rprofile (see >>>>>>>>?Rprofile for where that comes from). >>>>>>>> >>>>>>>>Watch out though: the graphics history is stored in your current >>>>>>>>workspace in memory, and it can get big. You might find you're >>>>>>>>running >>>>>>>>out of memory if you store everything, and you'll find your >>>>>>>>.RData files >>>>>>>>quite large if you save your workspace. >>>>>>>> >>>>>>>>On my todo list (but not for 2.3.0) is the possibility of setting a >>>>>>>>default history length, perhaps defaulting to saving the last 2 or 3 >>>>>>>>pages. >>>>>>> >>>>>>> >>>>>>>Would it be feasible to have history on disk or perhaps the last >>>>>>>m in memory and the last n (possibly Inf) on disk? >>>>>> >>>>>> >>>>>>The history is just another R object. Saving big R objects on disk >>>>>>might be desirable, but it would be a big change, so I'd call it >>>>>>infeasible. I wouldn't want to get into special-casing this >>>>>>particular >>>>>>R object: that way lies madness. >>>>>> >>>>>>However, since it is just an R object, it's available for R code to >>>>>>work >>>>>>with, so someone who was interested in doing this could write a >>>>>>contributed package that did it. >>>>> >>>>> >>>>>Are there R-level facilities to manipulate the history, not >>>>>just the top? >>>> >>>> >>>> >>>>Sure, it's a regular R object. You will need to read the source to >>>>know how to interpret it, and since it's undocumented there's a risk >>>>of changes in future R versions, but it's not very complicated. See >>>>my message to Peter. >>> >>> >>> >>> >>>Be careful with this. The objects that are recorded on the display >>>list are calls to graphics functions PLUS state information in a raw >>>binary format. The display list was originally intended for reuse >>>within the same R session (for redrawing the screen). If you try to >>>save it and use it between sessions or (worse) between versions of R >>>you could run into some nasty problems. For example, what if the >>>graphics function interface has changed? what if the raw binary state >>>information format has changed? what if the required packages are not >>>installed? At best, your saved object produces errors; at worst it >>>becomes completely useless and is unrecoverable. >>> >>>Paul >> >> >>Paul, >>If I read your comments correctly, the problem with manipulating the >>graph history is with saved histories across sessions/versions. Is >>there any reason not to manipulate it *within* a session? I never >>save plots for re-use in R. Re-running code is usually best for me. >>But I would find it handy to fiddle with the display list in a >>session. > > > > That is *one* problem with the display list. Messing directly with the > display list *within a session* is *less* dangerous, but R's behaviour > if you do that is "undefined". > > The display list is technically an internal structure for R's internal > use. We can't stop you playing with it, but I do not encourage it and > it is not officially supported. > > There are a number of simple things that you could do to the display > list that should work, but providing proper support for general > manipulations of the display list would require a significant amount of > (re)design of the R graphics code. > > Paul > > p.s. These comments apply to the display list in R's "graphics engine". > The 'grid' package also maintains a display list, and that has been > designed to support more general manipulations. ______________________________________________ R-help@stat.math.ethz.ch mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html