[Rd] New version of X11, png and jpeg
Roger D. Peng
rpeng at jhsph.edu
Tue Feb 26 15:44:18 CET 2008
Thanks, running r44621 works well (on my FC5 box) and I can make various plots
(I just did some limited testing).
When I run the 'TestChars()' example in 'points' I get many warnings of the form:
1: In plot.xy(xy.coords(x, y), type = type, ...) :
pch value '128' is invalid in this locale
2: In plot.xy(xy.coords(x, y), type = type, ...) :
pch value '129' is invalid in this locale
3: In plot.xy(xy.coords(x, y), type = type, ...) :
pch value '130' is invalid in this locale
The warnings go until
49: In plot.xy(xy.coords(x, y), type = type, ...) :
pch value '176' is invalid in this locale
50: In plot.xy(xy.coords(x, y), type = type, ...) :
pch value '177' is invalid in this locale
after which I think the warnings are not saved. Given the note in 'points' I
sense this is expected?
TestChars(sign = -1) and TestChars(font = 5) do not give any warnings but some
odd looking characters do appear on the device.
Here is my sessionInfo:
> sessionInfo()
R version 2.7.0 Under development (unstable) (--)
x86_64-unknown-linux-gnu
locale:
LC_CTYPE=en_US.UTF-8;LC_NUMERIC=C;LC_TIME=en_US.UTF-8;LC_COLLATE=en_US.UTF-8;LC_MONETARY=en_US.UTF-8;LC_MESSAGES=en_US.UTF-8;LC_PAPER=en_US.UTF-8;LC_NAME=C;LC_ADDRESS=C;LC_TELEPHONE=C;LC_MEASUREMENT=en_US.UTF-8;LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] lattice_0.17-6 RColorBrewer_1.0-2 cacher_0.1-1
loaded via a namespace (and not attached):
[1] digest_0.3.1 grid_2.7.0 tools_2.7.0
-roger
Prof Brian Ripley wrote:
> Revision r44621 supports (in a limited way) cairo 1.0 and hence I believe
> vanilla FC5 -- I found what purports to be a vanilla FC5 box and it works
> quite well there.
>
> Two people have reported that the svg(), cairo-pdf() and cairo-ps()
> devices produce blank (but not empty) files. I was able to confirm that
> on Debian etch (cairo 1.2.4). They do work on cairo 1.4.14 (F8) and
> better on a 1.5.10 snapshot.
>
> We've got a working version on Mac OS X, but you need to install cairo.
>
> Finally, the quality of the fonts you see will depend on what fonts you
> have installed: if you only have X11 bitmapped fonts, that is what you
> will get (and I am getting on our minimally configured Debian etch
> machine). Our Fedora installations are mainly using the URW Type 1 fonts
> in the urw-fonts RPM. One of the alternatives is RH's liberation fonts
> (https://www.redhat.com/promo/fonts/).
>
> On Mon, 25 Feb 2008, Prof Brian Ripley wrote:
>
>> That call is from Cairo 1.2, so looks like our test FC5 box had a later
>> version of the cairo libraries than the one pkg-config reported.
>>
>> You should be able to build with --without-cairo until such a time as we can
>> add a suitable configure test.
>>
>> Thank you for the report.
>>
>> On Mon, 25 Feb 2008, Roger Peng wrote:
>>
>>> (Apologies, I meant to 'Reply to all' the first time but forgot).
>>>
>>> I built r44608 of R-devel with (I think) cairo support. At least,
>>> that's what the configure script told me. In addition,
>>> 'capabilities("cairo")' is TRUE. Calling X11(type = "Cairo") gives me
>>> the error:
>>>
>>> Error in X11() : X11 module cannot be loaded
>>> In addition: Warning message:
>>> In X11() :
>>> unable to load shared library
>>> '/home/rpeng/install/R-devel/lib64/R/modules//R_X11.so':
>>> /home/rpeng/install/R-devel/lib64/R/modules//R_X11.so: undefined
>>> symbol: cairo_image_surface_get_data
>>>
>>>
>>> I figured I must be missing a library somewhere, but I'm not sure how
>>> to track down which one. Any thoughts here?
>>>
>>> I'm on a FC5 system with:
>>>
>>> cairo-devel-1.0.4-1
>>> cairo-1.0.4-1
>>> cairo-1.0.4-1
>>>
>>> and
>>>
>>> pango-1.12.4-4
>>> pango-devel-1.12.4-4
>>> pango-1.12.4-4
>>>
>>> Also, I have
>>>
>>> [rpeng at audrey R-source]$ pkg-config --modversion pango
>>> 1.12.4
>>> [rpeng at audrey R-source]$ pkg-config --modversion cairo
>>> 1.0.4
>>>
>>> -roger
>>>
>>> On Mon, Feb 25, 2008 at 11:56 AM, Prof Brian Ripley
>>> <ripley at stats.ox.ac.uk> wrote:
>>>> R-devel has new versions of the X11(), png() and jpeg() devices on
>>>> Unix-alikes. The intention is that these are used identically to the
>>>> previous versions (which remain available) but will produce
>>>> higher-quality
>>>> output with more features.
>>>>
>>>> Pros:
>>>>
>>>> Antialiasing of text and lines (can be turned off) but no blurring of
>>>> fills.
>>>>
>>>> Buffering of the X11 display and fast repainting from a backing image.
>>>> (The intention is to emulate the timer-based buffering of the windows()
>>>> device in due course, but not for 2.7.0.)
>>>>
>>>> Ability to use translucent colours, including backgrounds, and produce
>>>> partially transparent PNG files.
>>>>
>>>> Scalable text, including to sizes like 4.5 pt. This allows more accurate
>>>> sizing on non-standard screen sizes (e.g. my home machine has a 90dpi
>>>> 1650x1024 display whereas standard X11 fonts are set up for 75 or 100
>>>> dpi).
>>>>
>>>> Full support for UTF-8, so on systems with suitable fonts you can plot in
>>>> many languages on a single figure (and this will work even in non-UTF-8
>>>> locales). The output should be locale-independent (unlike the current
>>>> devices where even English text is rendered slightly differently in
>>>> Latin-1 and UTF-8 locales).
>>>>
>>>> A utility function savePlot() to make a PNG/JPEG/TIFF copy of the current
>>>> plot.
>>>>
>>>> The new png() and jpeg() devices do not require an X server to be
>>>> running.
>>>>
>>>> Cons:
>>>>
>>>> Needs more software installed - cairo, pango and support packages (which
>>>> on all the systems we have looked at are pulled in by the packages
>>>> checked
>>>> for). You will see something like
>>>>
>>>> Additional capabilities: PNG, JPEG, iconv, MBCS, NLS, cairo
>>>> ^^^^^
>>>> if configure finds the software we are looking for.
>>>>
>>>> Slower under some circumstances (although on the test systems much faster
>>>> than packages Cairo and cairoDevice). This will be particularly true for
>>>> X11() with a slow connection between the machine running R and the X
>>>> server.
>>>>
>>>> The additional software might not work correctly.
>>>>
>>>>
>>>> The new versions are not currently the default, but can be made so by
>>>> setting X11.options(type="Cairo"), e.g. as a load hook for package
>>>> grDevices. I am using
>>>>
>>>> setHook(packageEvent("grDevices", "onLoad"),
>>>> function(...) {
>>>> grDevices::ps.options(horizontal=FALSE)
>>>> if(getRversion() >= '2.7.0') grDevices::X11.options(type="Cairo")
>>>> })
>>>>
>>>>
>>>> Please try these out and let us know how you get on. As a check, try the
>>>> TestChars() examples in ?points - on one Solaris 10 system a few of the
>>>> symbol font characters were incorrect. It worked on an FC5 system with
>>>>
>>>> auk% pkg-config --modversion pango
>>>> 1.12.4
>>>> auk% pkg-config --modversion cairo
>>>> 1.0.4
>>>>
>>>> so the versions required are not all recent.
>>>>
>>>> Although these devices would in principle work on Mac OS X, neither cairo
>>>> nor pango is readily available. We are working on other versions for
>>>> Mac OS (X11 based on cairo/freetype, png/jpeg based on Quartz).
>>>>
>>>> There are also new svg() and tiff() devices.
>>>>
>>>> --
>>>> Brian D. Ripley, ripley at stats.ox.ac.uk
>>>> Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
>>>> University of Oxford, Tel: +44 1865 272861 (self)
>>>> 1 South Parks Road, +44 1865 272866 (PA)
>>>> Oxford OX1 3TG, UK Fax: +44 1865 272595
>>>>
>>>> ______________________________________________
>>>> R-devel at r-project.org mailing list
>>>> https://stat.ethz.ch/mailman/listinfo/r-devel
>>>>
>>>
>>>
>>> --
>>> Roger D. Peng | http://www.biostat.jhsph.edu/~rpeng/
>>>
>> --
>> Brian D. Ripley, ripley at stats.ox.ac.uk
>> Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
>> University of Oxford, Tel: +44 1865 272861 (self)
>> 1 South Parks Road, +44 1865 272866 (PA)
>> Oxford OX1 3TG, UK Fax: +44 1865 272595
>>
>
--
Roger D. Peng | http://www.biostat.jhsph.edu/~rpeng/
More information about the R-devel
mailing list