На сервере Ubuntu 18.04 с использованием дистрибутива python anaconda 3 я получаю следующую ошибку при попытке построить что-то с помощью matplotlib:
Traceback (most recent call last): File "fft_gen_3d.py", line 82, in plt.pcolormesh(t, f, Sxx) File "/home/admin/anaconda3/lib/python3.6/site-packages/matplotlib/pyplot.py", line 3277, in pcolormesh ax = gca() File "/home/admin/anaconda3/lib/python3.6/site-packages/matplotlib/pyplot.py", line 984, in gca return gcf().gca(**kwargs) File "/home/admin/anaconda3/lib/python3.6/site-packages/matplotlib/pyplot.py", line 601, in gcf return figure() File "/home/admin/anaconda3/lib/python3.6/site-packages/matplotlib/pyplot.py", line 548, in figure **kwargs) File "/home/admin/anaconda3/lib/python3.6/site-packages/matplotlib/backend_bases.py", line 161, in new_figure_manager return cls.new_figure_manager_given_figure(num, fig) File "/home/admin/anaconda3/lib/python3.6/site-packages/matplotlib/backend_bases.py", line 167, in new_figure_manager_given_figure canvas = cls.FigureCanvas(figure) File "/home/admin/anaconda3/lib/python3.6/site-packages/matplotlib/backends/backend_qt5agg.py", line 24, in init super(FigureCanvasQTAgg, self).init(figure=figure) File "/home/admin/anaconda3/lib/python3.6/site-packages/matplotlib/backends/backend_qt5.py", line 234, in init _create_qApp() File "/home/admin/anaconda3/lib/python3.6/site-packages/matplotlib/backends/backend_qt5.py", line 125, in _create_qApp raise RuntimeError('Invalid DISPLAY variable') RuntimeError: Invalid DISPLAY variable
Все онлайн-решения просто используют строку:
plt.switch_backend('agg')
Однако для меня это не работает. Что ДЕЙСТВИТЕЛЬНО работает, так это ssh'ing с -Y вместо -X. Что тут происходит?
Сервер Ubuntu 18.04. Отредактировал и исходный пост. Спасибо.






Не то, чтобы некоторые дистрибутивы, например Debian, измените настройки безопасности по умолчанию. Пожалуйста, укажите, какой из них вы используете.