matplotlibの図を表示できないエラーを解決する方法

matplotlibのエラーを解決する方法についてを表すサムネイル

こんにちは、にわこまです。

今回は、matplotlibで図を表示させようと思ったときに表示できなかった方に向けて、その解決方法を紹介しようと思います。

具体的には、以下のエラーを解決していきます。

「UserWarning: Matplotlib is currently using agg, which is a non-GUI backend, so cannot show the figure.」

 

誤字脱字など何かございましたらご連絡お願いいたします。

 

 

スポンサードサーチ


解決方法

解決方法を表す画像

解決方法1

「matplotlib.use(‘Agg’)」を削除する

 

解決方法2(1で解決できなかった場合)

表示するのではなく、保存する。
show() → savefig(ファイル名)

 

 

コマンドプロンプトでファイルを実行し、図を表示させようとするときにエラーが発生したと思います。

matplotlib.use(‘Agg’)」は、図を表示させないための設定となっています。ゆえに、このコードが書かれているプログラムで図を表示させようとするとエラーが発生します。

エラーが発生するコードを以下に示します。(test01.py)

import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
import numpy as np

x = [0, 1, 2, 3, 4, 5]
y = [2, 5, 3, 0, 10, 9]

plt.plot(x, y)
plt.show()

===== 実行結果 =====
test01.py:10: UserWarning: Matplotlib is currently using agg, which is a non-GUI backend, so cannot show the figure.
  plt.show()

 

 

解決方法1によってエラーを回避するコードを以下に示します。(test02.py)

import matplotlib.pyplot as plt
import numpy as np

x = [0, 1, 2, 3, 4, 5]
y = [2, 5, 3, 0, 10, 9]

plt.plot(x, y)
plt.show()

実行結果は以下のような図が表示されます。

test02.pyの実行結果

 

 

「matplotlib.use(‘Agg’)」を削除したコードでもエラーが発生した場合、またはパソコンに図を表示させるためのインターフェース(GUI)がない方は、図を表示させることをあきらめて、図を保存しましょう。

解決方法2によってエラーを回避するコードを以下に示します。(test03.py)

import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
import numpy as np

x = [0, 1, 2, 3, 4, 5]
y = [2, 5, 3, 0, 10, 9]

plt.plot(x, y)
plt.savefig('figure01.jpg')

実行結果は以下のような図を保存できます。

test03.pyを実行することによって保存された図
figure01.jpg

 

 

まとめ

まとめの画像

今回は、matplotlibで図を表示させようとするときに発生するエラーの解決方法を紹介しました。

 

解決方法1

「matplotlib.use(‘Agg’)」の記述を削除する。

 

解決方法2(解決方法1の方法で解決できない場合)

図を保存する。具体的には「show()」を「savefig(保存ファイル名)」に変更する。

 

 

最後までお読みいただきありがとうございます。


スポンサードサーチ