[R] recordPlot in 1.5.x, replayPlot in 1.6.0 problem

Don MacQueen macq at llnl.gov
Thu Nov 7 00:57:57 CET 2002

Thank you for the example and the explanation.

It is not a problem for me to regenerate the display list--indeed, by 
design, they will be regenerated from time to time. So there is no 
urgency on my part to detect version changes automatically.

I'm using display lists to store large numbers of plots, and then 
using the R-TclTk library to present users with a dialog box in which 
they can press the Home, End, PageUp, PageDown keys to move through 
the plots. I was very glad when I learned of recordPlot() and 
replayPlot() and found I could use them for that purpose.


At 12:08 PM +1300 11/7/02, Paul Murrell wrote:
>Don MacQueen wrote:
>>  Thank you for responding.
>>  I checked the dates, and "fairly recent" means R-1.5.0 in this case.
>>  I will try to get a reproducible example.
>I have a reproducible example.  Try this in R 1.5.0 ...
>	plot(1:10)
>	temp <- recordPlot()
>	save(temp, file="dl")
>... then this in R 1.6.0 ...
>	load(temp)
>	x11()
>	replayPlot(temp) 
>... and the tick-marks on the axis are a bit funny (dotty).
>I think the problem is that the interface for the internal axis code has
>changed.  In 1.5.0 we had ...
>     /* axis(side, at, labels, tick,
>      *	     line, pos, outer, font, vfont, ...) */
>... in 1.6.0 we have ...
>     /* axis(side, at, labels, tick, line, pos,
>      *	    outer, font, vfont, lty, lwd, col, ...) */
>What gets saved by recordPlot() is the display list which is a list of
>internal C calls.  What you are seeing is the 1.6.0 code being called
>with a 1.5.0 argument list and the lty, lwd, and col arguments are
>missing so goodness knows where they are being taken from.
>In simple terms, this is a danger of trying to use display lists across
>different versions of R -- the information that is stored in the display
>list *may* be version-specific.  Ideally we would detect these changes
>automatically -- sorting out display lists is a todo item.
>In case it is of any use, I have a very basic discussion of saving and
>reusing graphics output at
>This is aimed at using grid, but some of it is relevant for base
>graphics too.

Don MacQueen
Environmental Protection Department
Lawrence Livermore National Laboratory
Livermore, CA, USA
r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !)  To: r-help-request at stat.math.ethz.ch

More information about the R-help mailing list