From dd7a6ed603fbc59fd6044ec13d545ff9a760568c Mon Sep 17 00:00:00 2001
From: David Keitel <david.keitel@ligo.org>
Date: Wed, 5 Jul 2017 13:55:43 +0100
Subject: [PATCH] workaround for matplotlib on X-less remote logins

 -first check $DISPLAY environment variable
 -then use non-interactive "AGG" backend if necessary
---
 pyfstat/core.py | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/pyfstat/core.py b/pyfstat/core.py
index 7ee28da..92e5f89 100755
--- a/pyfstat/core.py
+++ b/pyfstat/core.py
@@ -6,7 +6,17 @@ import glob
 import subprocess
 
 import numpy as np
-import matplotlib.pyplot as plt
+
+# workaround for matplotlib on X-less remote logins
+if os.environ.has_key('DISPLAY'):
+    import matplotlib.pyplot as plt
+else:
+    logging.info('No $DISPLAY environment variable found, \
+                  so importing matplotlib.pyplot with non-interactive "Agg" backend.')
+    import matplotlib
+    matplotlib.use('Agg')
+    import matplotlib.pyplot as plt
+
 import scipy.special
 import scipy.optimize
 import lal
-- 
GitLab