【发布时间】:2016-06-14 17:01:39
【问题描述】:
我正在使用linux 中的ssh 命令在另一台机器上运行我的python 脚本。我也运行了这个命令:
source ~/.bashrc
登录另一台机器后,为了在新机器上定义正确的路径。即使我尝试通过定义后端来遵循this question 中的指令,我也收到了运行以下 python 代码行的错误消息。
>>> import matplotlib
>>> import pylab as plt
>>> matplotlib.use('Agg')
>>> import numpy as np
>>> x=np.arange(0,2,0.001)
>>> y=np.sin(x)**2+4*np.cos(x)
>>> fig = plt.figure()
>>> plt.plot(x,y,'r.')
错误信息
This probably means that Tcl wasn't installed properly.
Traceback (most recent call last):
File "Systematic_Optimised.py", line 513, in <module>
fig = plt.figure()
File "/vol/anaconda/lib/python2.7/site-packages/matplotlib/pyplot.py", line 435, in figure
**kwargs)
File "/vol/anaconda/lib/python2.7/site-packages/matplotlib/backends/backend_qt4agg.py", line 47, in new_figure_manager
return new_figure_manager_given_figure(num, thisFig)
File "/vol/anaconda/lib/python2.7/site-packages/matplotlib/backends/backend_qt4agg.py", line 54, in new_figure_manager_given_figure
canvas = FigureCanvasQTAgg(figure)
File "/vol/anaconda/lib/python2.7/site-packages/matplotlib/backends/backend_qt4agg.py", line 72, in __init__
FigureCanvasQT.__init__(self, figure)
File "/vol/aibn84/data2/zahra/anaconda/lib/python2.7/site-packages/matplotlib/backends/backend_qt4.py", line 68, in __init__
_create_qApp()
File "/vol/anaconda/lib/python2.7/site-packages/matplotlib/backends/backend_qt5.py", line 138, in _create_qApp
raise RuntimeError('Invalid DISPLAY variable')
RuntimeError: Invalid DISPLAY variable
任何解决问题的建议
【问题讨论】:
-
在你的机器上做
echo $DISPLAY。你的操作系统是什么,你是通过 ssh 运行的吗? -
如果你必须使用远程机器上的显示,你需要使用带有
-X参数的ssh。 -
@KlausD。我已经使用
ssh -X username@host命令登录了。
标签: python linux matplotlib