2010-05-04 20 views
14

Estoy trabajando de forma remota en una máquina que es bastante restrictiva. No puedo instalar ningún software, y no aceptará mi sesión X11, así que no tengo pantalla. La máquina actualmente tiene instalado pylab, y me gustaría usarlo para trazar algo y luego guardarlo para verlo en otra computadora. Sin embargo, parece que no hay forma de siquiera crear una trama sin una pantalla. ¿Me estoy perdiendo de algo?¿Es posible usar pyplot sin DISPLAY?

Respuesta

0

Sí, después de la creación de las parcelas, etc., en lugar de llamar

pylab.show() 

llamada

pylab.savefig('filename.XXX') 

donde XXX es una de las extensiones comunes de la imagen (png, jpg ...)

+1

Hola, gracias! ¿Es la forma de crear una trama pylab.plot()? Porque incluso esa llamada parece darme errores, diciendo que no tengo establecida la variable $ DISPLAY. – lemur

23

Utilice otro servidor, por ejemplo Agg o SVG:

import matplotlib 
matplotlib.use('Agg') 
... 
matplotlib.savefig('out.png') 
+1

¡Guau, esto funcionó a la perfección! ¡Muchas gracias! :) – lemur

Cuestiones relacionadas