matplotlib.backends.backend_pdf を使用して、いくつかの matplotlib プロットを PDF にレンダリングしています。(Linux) コンピューターから実行すると問題なく動作しますが、外部の場所からコンピューターに ssh 接続してコードを実行すると、次のエラー メッセージが表示されて失敗します。
File "/usr/lib/pymodules/python2.7/matplotlib/pyplot.py", line 343, in figure
**kwargs)
File "/usr/lib/pymodules/python2.7/matplotlib/backends/backend_tkagg.py", line 80, in new_figure_manager
window = Tk.Tk()
File "/usr/lib/python2.7/lib-tk/Tkinter.py", line 1688, in __init__
self.tk = _tkinter.create(screenName, baseName, className, interactive, wantobjects, useTk, sync, use)
_tkinter.TclError: no display name and no $DISPLAY environment variable
失敗したコードの行はfig = matplotlib.pyplot.figure(figsize=(11.5,14.8))です。
これは、プロットをレンダリングするディスプレイを見つけようとしていることに関係していると思いますが、私のコードは実際にはそれらを表示しません。PDFにのみ保存されます。この問題を回避してコードを適切に実行する方法はありますか?