この記事は公開から2年以上経過しています。
pandasのデータをplotした際にグラフウィンドウが勝手に閉じてしまう現象に遭遇したため、その対応についての備忘録。
問題
以下のようなコードでpandasのグラフ表示を行うと、グラフウィンドウが自動的に閉じてしまう。
import pandas as pd
import matplotlib.pyplot as plt
pd.Series([1, 2, 3, 4], index=['A', 'B', 'C', 'D']).plot(kind='bar')
plt.show()
原因
matplotlibがインタラクティブモードになっている。
対応
方法 1.
matplotlibの設定を非インタラクティブモードに設定する。
import matplotlib
matplotlib.interactive(False)
方法 2.
matplotlib.pyplot.show()
の引数にblock=True
を設定してGUIメインループをブロックする。
plt.show(block=True)
参考ウェブサイトなど
- matplotlib
matplotlib.pyplot.show
以上です。