wsl を使用してコードを実行する場合、データを視覚化するために pyplot が必要になるためですが、
import matplotlib.pyplot as plt
# other code
plt.show()
wsl上 のmatplotlib のデフォルトのバックエンドは Agg (ダム バックエンド) でplt.show()
あるため 、その後画像は描画 されず、つまり、その後は何も起こらないため、xrdp+xfce4 を使用してリモート グラフィカル デスクトップ アクセスを実現しました。写真の効果が悪いものではないことを示しています。plt.show()
以下にインストールプロセスを共有しましょう。
1. インストールパッケージ
xfce4
最初に更新してからインストールします。パッケージは全部で2 つだけです。xrdp
$ sudo apt update
$ sudo apt install -y xfce4 xrdp
xfce4 のインストール中に、管理 DM の選択を表示するかどうかを選択するよう求められます。 lightdm
インストール プロセス中に表示されるウィザードを見逃した場合は、インストールの完了後に次のコマンドを実行して DM をリセットできます。
$ sudo dpkg-reconfigure lightdm
2.xrdpのデフォルトポートを変更する
インストール後のデフォルト設定で xrdp
は Windows リモート デスクトップと同じポートが使用されるため3389
、Windows リモート デスクトップとの競合を防ぐため、別のポートに変更することをお勧めします。
$ sudo vim /etc/xrdp/xrdp.ini
# 修改下面这一行,将默认的3389改成其他端口即可
port=3390
3. 現在のユーザーのログイン セッション タイプを指定します。
この手順に注意することが重要です。設定しないと、後でリモート デスクトップ接続がクラッシュする原因になります。
$ vim ~/.xsession
# 写入下面内容(就一行)
xfce4-session
4.xrdpを起動します
WSL2 では使用できないためsystemd
、手動で起動する必要があります。
$ sudo /etc/init.d/xrdp start
5. リモートアクセス
コマンドを実行して Windows システムでリモート デスクトップ接続を開き mstsc
、アドレスを入力します。 localhost:3390
ここでのポート番号は、上記で変更した構成と一致している必要があることに注意してください。
WSL2 サブシステムで使用するアカウントとパスワードを入力してログインします。
見た目はかなり良いですが、実際に使ってみるとかなり滑らかです。
6. 以下は私のインターフェースを示しています
ターミナルでコードを実行すると、期待どおりの画像が表示されました。
参考: WSL2 は xrdp を使用してグラフィカル デスクトップを実装します - Zhihu (zhihu.com)