[R] X11 font error on headless server running Xvfb
Jonathan Levine
jstat at erols.com
Mon Jun 4 18:31:49 CEST 2012
I am trying to run an R script to create a .png file containing a tree map on a headless Linux server using Xvfb. When I try to run tmPlot, I get the following errors and warnings:
Error in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
X11 font -adobe-helvetica-%s-%s-*-*-%d-*-*-*-*-*-*-*, face 1 at size 9 could not be loaded
Calls: tmPlot ... <Anonymous> -> widthDetails -> widthDetails.text -> grid.Call
In addition: Warning messages:
1: In grid.Call.graphics(L_text, as.graphicsAnnot(x$label), x$x, x$y, :
X11 protocol error: BadMatch (invalid parameter attributes)
...
etc. (complete error message below)
The .png file does contain a partially constructed graph. When I try something simple like plot(x,y) I get a plot with warnings.
The results from capabilities() and X11Fonts() (see end of message) suggest to me that it should work.
Any idea what is happening and how to fix the problem (or work around it)?
Thanks,
Jay
--------------------------
> sessionInfo()
R version 2.15.0 (2012-03-30)
Platform: x86_64-unknown-linux-gnu (64-bit)
locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
[3] LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8
[5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8
[7] LC_PAPER=C LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] grid stats graphics grDevices utils datasets methods
[8] base
other attached packages:
[1] treemap_1.0-4 data.table_1.8.0 RColorBrewer_1.0-5
> capabilities()
jpeg png tiff tcltk X11 aqua http/ftp sockets
TRUE TRUE TRUE TRUE TRUE FALSE TRUE TRUE
libxml fifo cledit iconv NLS profmem cairo
TRUE TRUE FALSE TRUE TRUE FALSE FALSE
> X11Fonts()
$serif
[1] "-*-times-%s-%s-*-*-%d-*-*-*-*-*-*-*"
$sans
[1] "-*-helvetica-%s-%s-*-*-%d-*-*-*-*-*-*-*"
$mono
[1] "-*-courier-%s-%s-*-*-%d-*-*-*-*-*-*-*"
$Times
[1] "-adobe-times-%s-%s-*-*-%d-*-*-*-*-*-*-*"
$Helvetica
[1] "-adobe-helvetica-%s-%s-*-*-%d-*-*-*-*-*-*-*"
$CyrTimes
[1] "-cronyx-times-%s-%s-*-*-%d-*-*-*-*-*-*-*"
$CyrHelvetica
[1] "-cronyx-helvetica-%s-%s-*-*-%d-*-*-*-*-*-*-*"
$Arial
[1] "-monotype-arial-%s-%s-*-*-%d-*-*-*-*-*-*-*"
$Mincho
[1] "-*-mincho-%s-%s-*-*-%d-*-*-*-*-*-*-*"
>
> png(file="/tmp/tmpzT4H0e.png",width = 800, height = 800)
> tmPlot(myDF,index=c(vars[1],vars[2]),
+ vSize=vars[4],
+ vColor=vars[3],
+ type="value")
Error in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
X11 font -adobe-helvetica-%s-%s-*-*-%d-*-*-*-*-*-*-*, face 1 at size 9 could not be loaded
Calls: tmPlot ... <Anonymous> -> widthDetails -> widthDetails.text -> grid.Call
In addition: Warning messages:
1: In grid.Call.graphics(L_text, as.graphicsAnnot(x$label), x$x, x$y, :
X11 protocol error: BadMatch (invalid parameter attributes)
2: In grid.Call.graphics(L_text, as.graphicsAnnot(x$label), x$x, x$y, :
X11 protocol error: BadMatch (invalid parameter attributes)
3: In grid.Call.graphics(L_rect, x$x, x$y, x$width, x$height, resolveHJust(x$just, :
X11 protocol error: BadMatch (invalid parameter attributes)
4: In grid.Call.graphics(L_rect, x$x, x$y, x$width, x$height, resolveHJust(x$just, :
X11 protocol error: BadMatch (invalid parameter attributes)
5: In grid.Call.graphics(L_text, as.graphicsAnnot(x$label), x$x, x$y, :
X11 protocol error: BadMatch (invalid parameter attributes)
6: In grid.Call.graphics(L_text, as.graphicsAnnot(x$label), x$x, x$y, :
X11 protocol error: BadMatch (invalid parameter attributes)
7: In grid.Call.graphics(L_text, as.graphicsAnnot(x$label), x$x, x$y, :
X11 protocol error: BadMatch (invalid parameter attributes)
8: In grid.Call.graphics(L_text, as.graphicsAnnot(x$label), x$x, x$y, :
X11 protocol error: BadMatch (invalid parameter attributes)
9: In grid.Call.graphics(L_rect, x$x, x$y, x$width, x$height, resolveHJust(x$just, :
X11 protocol error: BadMatch (invalid parameter attributes)
10: In grid.Call.graphics(L_rect, x$x, x$y, x$width, x$height, resolveHJust(x$just, :
X11 protocol error: BadMatch (invalid parameter attributes)
Execution halted
More information about the R-help
mailing list