pycharm2020报错 Error: failed to send plot to http://127.0.0.1:63342
问题:
使用pycharm2020连接远程Python解释器,画图plt.show()报错
错误原因:
在“http://127.0.0.1:63342”中的63342是环境变量os.environ[‘PYCHARM_DISPLAY_PORT’]或者os.getenv(“PYCHARM_MATPLOTLIB_PORT”)。
远程解释器尝试将图像数据发送到 远程服务器的127.0.0.1 : 63342 ,然而Connection
refused。SciView的运行机制是:本地笔记本的Pycharm会侦听127.0.0.1:63342
,远程解释器会将图像数据发送到127.0.0.1 : 63342,因此在Pycharm收到图像数据后,会在SciView中显示。
解决方案:
为了解决以上Connection refused问题,ssh远程端口转发可以建立起远程server127.0.0.1 : 63342 和
本机笔记本127.0.0.1:63342 之间的channel。在本地笔记本上运行 ssh -R 63342:127.0.0.1:63342 user@serverIP , 在运行plt.plot()
以及 plt.show() ,SciView能够显示图像。