[R] CairoPDF and greek letter spacing

Rolf Turner rolf.turner at xtra.co.nz
Tue Jan 10 02:19:53 CET 2012


On 10/01/12 11:40, John Walker wrote:
> I have a small problem with R graphics output. When I use the lattice
> package and CairoPDF to generate publication quality graphs I often use
> the expression to create an axis title that has microlitres or
> micrometers as a unit. I use something like the following
> 'expression(paste("Length (", mu,"m )"))' as an argument to the xlabel
> function. The command works but the mu and 'm' have a space between
> them. It looks like 'u m' rather than 'um'. It only seems to happen with
> the CairoPDF output on my linux machine, it's fine on the X11 device.
> I've fixed it in the past by importing the pdf into inkscape and
> manually adjusting the spacing (it's more difficult than it sounds
> because I can't actually adjust the spacing but have to delete the mu
> and re-enter it).  Is there something I'm doing wrong? Is this a known
> bug?  How can I fix it?
I can't help, but I can confirm the problem, for what *that* is worth.

It seems be an unfortunate interaction between lattice graphics and
the cairo_pdf() device.

The space between the "mu" and the "m" does not appear with
``ordinary'' R graphics, irrespective of device, nor does it appear
with lattice graphics and, e.g. the pdf() device.  But it does appear
with lattice graphics *and* the cairo_pdf() device.

That probably means that the problem is subtle and will be difficult
to impossible to fix. :-(

Good luck.

     cheers,

         Rolf Turner



More information about the R-help mailing list