[R] R versions and PostScript files

pilchat pilchat at gmail.com
Thu Jul 21 23:17:25 CEST 2011


thank you guys for your reply.

i was sure that it was related to changes in the generation of ps
files with the latest R release.

now the question is: how can i restore the old behavior in R2.13?

thanks

gaetano

On 7/21/11, Ted Harding <ted.harding at wlandres.net> wrote:
> Yes, Peter, your suggestion does the trick (at any rate with
> Gaetano's files).
>
> I edited his volc2.13.eps (the slow one) as follows (the original
> commented out with "%%##") making just the following change:
>
> %%## /setrgb { srgb setcolor } def
> /setrgb { setrgbcolor } def
> %%## End of editing
>
> (at line 53 of the prologue). The result is a file that produces
> exactly the same picture as the other (fast) one, and renders
> (to within my perceptual resolution) in exactly the same time,
> i.e. just under one second (as opposed to about 18 before).
>
> Thanks, Peter!
> Ted.
>
> On 21-Jul-11 18:59:58, peter dalgaard wrote:
>> This is due to the introduction of sRGB. Since this actually does
>> something (Google for sRGB and you will be approximately as wise as
>> me...), I don't think it is likely to be taken out. You can, however,
>> always edit .ps.prolog. (I would expect that the line
>>
>> /setrgb { setrgbcolor } def
>>
>> instead of what is already there would reinstate the old behavior, but
>> no guarantees.
>> )
>>
>>
>> On Jul 21, 2011, at 17:26 , (Ted Harding) wrote:
>>
>>> On 21-Jul-11 13:24:32, Duncan Murdoch wrote:
>>>> On 11-07-21 3:23 AM, pilchat wrote:
>>>>> Dear R users,
>>>>>
>>>>> I have a desktop computer and a laptop, both of them
>>>>> with Ubuntu Lucid. The former has R2.10 installed from
>>>>> Ubuntu repositories (this is the most recent version
>>>>> in the repositories), while the latter has R2.13 from
>>>>> the CRAN repositories.
>>>>>
>>>>> I noticed that postscript files generated with R2.10
>>>>> are "better" than files generated with the latest release
>>>>> of R, in particular for plots with colored areas, such
>>>>> as the output of image or persp. The thing is that my ps
>>>>> viewer (e.g. gv or evince) is very slow in opening ps
>>>>> files from R2.13, while it smoothly displays ps files
>>>>> from R2.10, regardless of "encapsulation".
>>>>>
>>>>> I think this is related to differences in the way the
>>>>> ps file is generated by the two versions of R, but I
>>>>> don't know how to go deeper in the matter.
>>>>
>>>> Postscript files are mostly text, so you can compare the
>>>> two files and > see what the differences are. The NEWS
>>>> file shows a number of changes since 2.10.0, but I can't
>>>> see any that would cause problems for viewers.
>>>>
>>>> Duncan Murdoch
>>>>
>>>>> Is there anyone experiencing the same issue? Is there
>>>>> any solution?
>>>>>
>>>>> Thank you in advance
>>>>>
>>>>> Cheers
>>>>> Gaetano
>>>
>>> Gaetano has now sent me two files, generated (as he posted
>>> just now on R-help) by the same commands:
>>>
>>>  setEPS()
>>>  postscript (file="volc.eps",width=5,height=4)
>>>  image(volcano)
>>>  dev.off()
>>>
>>> on his two machines:
>>>
>>> volc2.10.eps generated using R-2.10 on his desktop
>>>  (the EPS file with fast rendering)
>>>
>>> volc2.13.eps generated using R-2.13 on his laptop
>>>  (the EPS file with slow rendering)
>>>
>>> I have viewed both files on the same machine, and the
>>> result indeed is that while volc2.10.eps renders very
>>> quickly, volc2.13.eps does render very slowly (painting
>>> in by vertical strips which move jerkily from left
>>> to right). I estimate that 'gv volc2.10.eps' does the
>>> rendering in less than 1 second, while 'gv volc2.13.eps'
>>> takes about 18 seconds.
>>>
>>> Comparing the two files, I think I have found the reason.
>>>
>>> A 'diff' on the two files shows a basic difference in
>>> definitions of a function used in the plotting:
>>>
>>> [A] In file volc2.10.eps (the fast one):
>>>
>>>  /rgb { setrgbcolor } def
>>>
>>> [B] In file volc2.13.eps (the slow one):
>>>
>>>  /srgb { [ /CIEBasedABC
>>>            << /DecodeLMN
>>>                 [ { dup 0.03928 le
>>>                          {12.92321 div}
>>>                          {0.055 add 1.055 div 2.4 exp }
>>>                       ifelse
>>>                   } bind dup dup
>>>                 ]
>>>               /MatrixLMN [0.412457 0.212673 0.019334
>>>                           0.357576 0.715152 0.119192
>>>                           0.180437 0.072175 0.950301]
>>>               /WhitePoint [0.9505 1.0 1.0890]
>>>>>
>>>           ] setcolorspace } def
>>>  /setrgb { srgb setcolor } def
>>>
>>>
>>> Then [A] volc2.10.eps (the fast one) uses commands like:
>>>
>>>  /bg { 1 0 0 rgb } def
>>>
>>> while [B] volc2.13.eps (the slow one) uses commands like:
>>>
>>>  /bg { 1 0 0 setrgb } def
>>>
>>> in each case for exactly the same purpose. Thus [B] the
>>> slow one uses repeatedly (1157 times) a function setrgb
>>> which has much higher overheads (see definition above)
>>> than the function rgb used (1156 times) by [A] the fast one.
>>>
>>> So the difference in performance is *definitely* down to
>>> a specific difference in how R-2.13 implements 'postscript()'
>>> compared with R-2.10.
>>>
>>> Hoping this is useful!
>>> Ted.
>>>
>>> --------------------------------------------------------------------
>>> E-Mail: (Ted Harding) <ted.harding at wlandres.net>
>>> Fax-to-email: +44 (0)870 094 0861
>>> Date: 21-Jul-11                                       Time: 16:26:33
>>> ------------------------------ XFMail ------------------------------
>>>
>>> ______________________________________________
>>> R-help at r-project.org mailing list
>>> https://stat.ethz.ch/mailman/listinfo/r-help
>>> PLEASE do read the posting guide
>>> http://www.R-project.org/posting-guide.html
>>> and provide commented, minimal, self-contained, reproducible code.
>>
>> --
>> Peter Dalgaard
>> Center for Statistics, Copenhagen Business School
>> Solbjerg Plads 3, 2000 Frederiksberg, Denmark
>> Phone: (+45)38153501
>> Email: pd.mes at cbs.dk  Priv: PDalgd at gmail.com
>>
>
> --------------------------------------------------------------------
> E-Mail: (Ted Harding) <ted.harding at wlandres.net>
> Fax-to-email: +44 (0)870 094 0861
> Date: 21-Jul-11                                       Time: 21:13:21
> ------------------------------ XFMail ------------------------------
>



More information about the R-help mailing list