使用PyCharm在远程服务器上绘制Python

And*_*dis 9 python linux windows x11 matplotlib

我已经开始学习Python,到目前为止我的设置一直在关注 - 在Win10 64位本地机器上安装Python 3.5,PyCharm是一个很棒的IDE.一切正常,matplotlib图表和其他视觉输出显示精细,调试工作等.

现在,我遇到了一些仅适用于Linux的库.我在Digital Ocean上安装了Ubuntu 16.4 64bit VPS,安装了Python 3.5.在PyCharm中,我已经设置了与远程主机的SFTP连接.代码运行工作,调试工作,但是,我无法将显示输出(matplotlib绘图,...)带到本地(Win10)机器.由于我对Linux GUI环境(X11?)一点都不熟悉,谷歌搜索后我有以下问题:

1)是否应该在远程Linux机器上安装任何东西?(例如x11 client/server/smth?)

2)是否应该在本地Win机器上安装任何东西?(例如Xming?)

3)是否应该在远程Linx机器上配置任何东西?(例如X11转发)

4)是否应在本地Win机器PyCharm上配置任何内容?

5)Putty中有X11转发设置,有些人建议使用这些设置,但我不确定,如果Putty会话与PyCharm并行运行并且可以避免.

非常感谢!

PS - 我已经在远程机器上安装了Jupyter Notebook(和最新的Jupyter Lab)并且它工作得非常好,但我仍然更喜欢PyCharm作为主要IDE,具有更好的代码完成,调试器和其他额外补贴.

And*_*dis 11

好吧,经过一些谷歌搜索后,我终于设法让这个过程正常工作,希望它有助于某人:

1)在远程主机(VPS,Ubuntu 16.04)上我必须安装X11服务器,我做的是:

sudo apt-get install xorg
sudo apt-get install openbox
Run Code Online (Sandbox Code Playgroud)

2)在远程主机上,我必须确保在/ etc/ssh/sshd_config中启用了X11Forwarding

3)在本地Win10机器上,我必须安装Xming服务器并使用默认设置启动它.

4)在本地Win10机器上,我必须配置Putty使用X11转发(Connection-> SSH - > X11 Forwarding)和默认设置,并在运行PyCharm时保持连接打开(似乎PyCharm中没有选项可以启用x11转发,所以putty必须在后台运行)

5)在远程机器上,我必须检查显示号码(echo $ DISPLAY) - 这对每个人来说都是不同的.对我来说这是localhost:10.0

6)在PyCharm Run配置 - >环境变量中我必须添加DISPLAY = localhost:10.0

完成所有这些步骤并在背景中运行Putty + Xming之后,我能够执行远程代码并将图形带回我的Windows 10 PC!

PS - 过程实际上很慢,我必须等待大约10秒才能将图像带回给我.我不知道为什么或如何加快速度.可能是另一个问题.(降低chipher强度和启用压缩没有帮助.看起来x11远程和本地的某种初始化问题)