Gaming Life

一日24時間、ゲームは10時間

WSLのUbuntu18.04でmatplotlibを使えるようにするまで

WSLのUBuntu18.04はGUI表示が存在しないので、matplotlibを使ったグラフ描画ができない。だが、調べてみると、何とか描画できるようにできたので、メモしておく。

前準備

> sudo apt update && sudo apt upgrade
> sudo apt install python3-pip

matplotlibの導入

pip3を使ってmatplotlibと、セットで使われがちなnumpyを導入しておく

> pip3 install numpy
> pip3 install matplotlib

matplotlibを使った参考プログラム

vim等のエディタを使って、以下のコードを入力

> vim sampleGraph.py
import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 10, 100)
y = np.random.randn(100)
plt.plot(x, y)
plt.show()

これを実行してみる。

> python3 sampleGraph.py

この時点で Tkinterがないだのというエラーが出たら、以下のコマンドを実行

> sudo apt install python3-tk
> sudo apt install tk-dev

ウィンドウに描画できるようにする

sourceForgeで、VcXsrvをDLする。

インストーラーでは特に追加設定の必要なし。指示通り勧めていけばよい。

インストールが終わったら、Windowキーを押し、XLaunchを実行する。

デフォルト設定のまま進め、完了を押す前にSave configurationを押し、設定ファイルをわかりやすいところ、例えばデスクトップに保存しておく。

完了を押せば、XLaunchが起動する。

WSLに戻って、以下のコマンドを実行。

> sudo vim ~/.bashrc

最後の行に以下を追加して保存する。

export DISPLAY=:0.0

WSLを再起動(ウィンドウを閉じるか、exitすれば良い)すればこの設定が読み込まれて、設定が反映される。

この後pythonを実行すると

> python3 sampleGraph.py

f:id:ai_gaminglife:20190429204952p:plain

こんな感じでウィンドウが表示されるようになる。