
Estoy intentando que R realice algunos trazados muy básicos y cosas así en UNIX, pero recibo un error extraño relacionado con X11, cuando, por lo que sé, ni siquiera necesito X11.
Tengo un nombre de matriz d
y quiero guardar una imagen de un mapa de calor de esta matriz sin mostrar la imagen (ya que no quiero usar X11). Aquí está mi código:
png(file="my_image.png")
heatmap(d)
dev.off()
El problema es que recibo el siguiente error:
Error in X11(paste("png::", filename, sep = ""), g$width, g$height, pointsize, :
unable to start device PNG
Además: Mensaje de advertencia:
In png(file = "interative_hen.png") :
unable to open connection to X11 display ''
No sé que esto está sucediendo, ya que no veo cómo R necesita X11, e incluso si lo necesita, X11 está instalado y funciona correctamente para cada aplicación con la que lo probé.
Respuesta1
Primero, verifique si la versión que R
está utilizando tiene capacidades PNG. Puede hacer esto llamando a la capabilities()
función desde un R
mensaje. Debería imprimir una lista similar a:
> capabilities()
jpeg png tiff tcltk X11 aqua http/ftp sockets
FALSE FALSE FALSE TRUE FALSE FALSE TRUE TRUE
libxml fifo cledit iconv NLS profmem cairo
TRUE TRUE TRUE TRUE TRUE FALSE FALSE
Si ve FALSE
debajo png
, entonces necesita volver a compilar manualmente R
con soporte PNG explícito. Siempre que haya instalado las dependencias de compilación necesarias, el proceso de compilación debería habilitar automáticamente las capacidades PNG.
Por último, suponiendo que no haya ningún servidor X local ejecutándose en el clúster, es posible que su cliente SSH no esté configurado correctamente; específicamente, asegúrese de haber habilitado el reenvío X11 (usando los indicadores -X
o -Y
si está usando una ssh
herramienta similar a UNIX). Alternativamente, puedes intentar usar un framebuffer virtual.
Consulte esta pregunta de desbordamiento de pila para obtener más detalles:Cómo ejecutar R en un servidor sin X11 y evitar dependencias rotas.