答案1
您需要安装“X 服务器”来提供 Windows 10 上典型的 Ubuntu 子系统上尚不存在的图形界面。
如果您在 Windows 桌面上安装 X 服务器应用程序并更改 Bash shell 中的设置,应用程序会将其图形输出发送到 X 服务器应用程序,并且它们将出现在您的 Windows 桌面上。
您可以安装西明适用于 Windows 的优质 X 服务器。只需接受默认设置。然后它将自动启动并在系统托盘中运行,等待您运行图形程序。
安装后,您需要设置DISPLAY
环境变量以指向系统上已运行的 X 服务器。
首先在 Bash 环境中运行以下命令来设置DISPLAY
变量:
export DISPLAY=:0
然后运行图形应用程序。在本例中
suplane | suximage title="My first test" &
部分内容取自极客
答案2
我发现的当前最佳解决方案是下载 MobaXterm 并通过 mobaXterm 使用本地 bash 终端,所有图形转发都由 Windows 端处理,目前 WSL 不处理 GUI 内容。
我在工作时使用 Mac,在家使用 Windows 机器,我设置了 WSL 并尝试使用 jupyter 笔记本,但在通过 matplotlib 启动图像时遇到同样的问题“无法连接到 X 服务器”,即使我运行的是 cygwin X 服务器,WSL 也不知道这一点。经过一番挖掘,我看到一个推荐 mobaXterm 的帖子,现在效果很好。