远程ipython内核不显示绘图
我的设置是在linux服务器上远程运行ipython笔记本,并通过ssh隧道从OSX连接到它 我可以确认X转发工作正常,并且从启动ipython的同一终端可以使用gnuplot等 在本地计算机上的ipython会话中,尝试执行以下操作时远程ipython内核不显示绘图,python,matplotlib,ipython,ipython-notebook,x11-forwarding,Python,Matplotlib,Ipython,Ipython Notebook,X11 Forwarding,我的设置是在linux服务器上远程运行ipython笔记本,并通过ssh隧道从OSX连接到它 我可以确认X转发工作正常,并且从启动ipython的同一终端可以使用gnuplot等 在本地计算机上的ipython会话中,尝试执行以下操作时 import matplotlib as mpl mpl.use("GTK3cairo") import matplotlib.pyplot as plt plt.plot([1,2,3,4],'*-') 我得到的只是[]。我尝试过其他各种后端,结果都是一样的
import matplotlib as mpl
mpl.use("GTK3cairo")
import matplotlib.pyplot as plt
plt.plot([1,2,3,4],'*-')
我得到的只是[]
。我尝试过其他各种后端,结果都是一样的。当使用%pylab inline
时,将显示绘图,但我希望它们位于单独的窗口中
我想X转发仍然有问题-调试这个的最佳方法是什么?欢迎所有建议
-L
(进行本地端口转发)而不是-X
(进行图形输出转发),如下所示:
ssh -L 8000:localhost:8888 your_user_name@your_server_ip
%matplotlib inline
from matplotlib import pyplot as plt
plt.figure()
plt.imshow(sample_image)
plt.show();
pyplot
之前,使用%matplotlib inline
预先加载后端并以结束代码>如下所示:
ssh -L 8000:localhost:8888 your_user_name@your_server_ip
%matplotlib inline
from matplotlib import pyplot as plt
plt.figure()
plt.imshow(sample_image)
plt.show();
您是否尝试过
plt.show()
?您可以使用@plonser通过局域网上的浏览器访问ipython笔记本,而不是ssh tunel:这就解决了问题,谢谢@wrdeman:我实际上一直在这样做——我真正的意思是通过ssh隧道访问服务器。1)不要使用%pylab,使用%matplotlib,2)内核在子进程中运行,可能不会继承环境变量,因此没有X-Forward。