2016-01-09 3 views
0

Иногда я запускаю свой скрипт через ssh. This answer сказал мне, чтобы установитьMatplotlib: проверьте, не определено ли DISPLAY

import matplotlib 
#matplotlib.use('Agg') # Must be before importing matplotlib.pyplot or pylab! 
import matplotlib.pyplot as plt 

, когда я получаю ошибку undefined SCREEN, запустив скрипт через SSH. Однако с этой преамбулой я не могу просматривать графики в интерактивном режиме, когда запускаю скрипт на своей локальной машине.

В каком состоянии проверить, установлен ли экран? Я бы хотел сделать

if SCREEN == None: 
    matplotlib.use('Agg') 

Каков правильный код для этого, как я могу это проверить?

+0

И вы связаны с [ 'SSH -X'] (http://stackoverflow.com/a/ 9303165/1771479)? – agold

ответ

2

Это выглядит как самый простой способ сделать это, чтобы проверить «DISPLAY» переменную окружения

import os 

# 'DISPLAY' will be something like this ':0' 
# on your local machine, and None otherwise 
if os.environ.get('DISPLAY') is None: 
    matplotlib.use('Agg') 
Смежные вопросы