vscode——matplotlib绘图不显示问题

为了方便使用,可以利用python的os模块,把脚本放在前面执行。在__main__脚本前面加上export DISPLAY=:0.0

## mian.py
import os
import matplotlib.plt as plt
## linux 下,给 $DISPLAY 分配一个变量,以防窗口无法弹出
if __name__ == "__main__":
    os.system('export DISPLAY=:0.0')
	x = [0,1]
	plt.plot(x)
	print('test matplot')

shell 中检查

echo $DISPLAY

如果显示为空,说明当前窗口没有获得 $DISPLAY 环境变量 导致无法画图。
解决方案:在shell中运行以下脚本给变量赋值即可。

export DISPLAY=:0.0

一般情况下不会报错,所以难以排查问题所在。

实际上,之前使用vscode开发python时,一直遇到matplotlib模块不画图现象。编译器并不报错,debug完全通过,就是不显示图像。然而,在shell中直接运行py脚本却可以画图。本质上是vscode的terminal没有获取到$DISPLAY环境变量,所以无法画图,需要手动给他分配一个。

你可能感兴趣的:(pytorch代码笔记)