WSL – Python matplotlib でグラフを描画する

Python では matplotlib パッケージを利用して多様なグラフを描画することができます。
この記事では、WSL の Ubuntu にて matplotlib を実行する方法をまとめます。

Languages

目次

動作環境

  • Windows 11
  • WSL Ubuntu 22.04
  • Python 3.10.6

事前準備

パッケージの更新とインストール

Ubuntu パッケージの更新

$ sudo apt update
$ sudo apt upgrade

python3-pip のインストール

$ sudo apt install python3-pip

matplotlib のインストール

$ pip install matplotlib

matplotlib の実行

サンプルコード

今回は以下のコードをサンプルにします。
-5.0 ~ 5.0 の範囲で sin(x) を描画するコードです。

import math
import matplotlib.pyplot

xs = [0.1 * i - 5 for i in range(100)]
ys = [math.sin(x) for x in xs]

matplotlib.pyplot.plot(xs, ys)
matplotlib.pyplot.show()

エラーの対処

先述のコードを実行すれば描画が可能ですが、GUI のバックエンドのインストールが未済の場合は、次のようにエラーが発生してしまいます。

$ python3 main.py
/ANY_PATH/main.py:8: UserWarning: Matplotlib is currently using agg, which is a non-GUI backend, so cannot show the figure.
  matplotlib.pyplot.show()

解決策はいくつかあるようですが、そのひとつとして、Ubuntu に tkinter をインストールすることで対処が可能そうです。

$ sudo apt install python3-tk

実行結果

改めて実行すると sin(x) のグラフが描画されます。

  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次