【Python】matplotlibで"_tkinter.TclError: can't delete Tcl command"エラー
Q&A
Closed
解決したいこと
matplotlibを勉強中、次のようなエラーが発生しました。
エラーは表示されてもその後は問題なく?処理されているのですが、
原因が気になるので質問します。
エラー発生環境
- Python 3.10.0
- PyCharm Community Edition 2021.2.2
- matplotlib 3.6.3
発生している問題・エラー
Traceback (most recent call last):
File "C:\work\programming\PyCharm\MatPlotLib\venv\lib\site-packages\matplotlib\cbook\__init__.py", line 307, in process
func(*args, **kwargs)
File "C:\work\programming\PyCharm\MatPlotLib\venv\lib\site-packages\matplotlib\backend_bases.py", line 3298, in <lambda>
"close_event", lambda e: manager.destroy())
File "C:\work\programming\PyCharm\MatPlotLib\venv\lib\site-packages\matplotlib\backends\_backend_tk.py", line 529, in destroy
self._window_dpi.trace_remove('write', self._window_dpi_cbname)
File "C:\Users\username\AppData\Local\Programs\Python\Python310\lib\tkinter\__init__.py", line 455, in trace_remove
self._tk.deletecommand(cbname)
_tkinter.TclError: can't delete Tcl command
該当するソースコード
import matplotlib.pyplot
figure = matplotlib.pyplot.figure()
matplotlib.pyplot.show()
上記コード実行後、
- 表示されたFigureの下部メニュー"Configure subplots"を押す
- 表示された"Subplot configuration tool"ウィンドウを×ボタンで閉じる
- Figureを×ボタンで閉じる
の手順で操作すると上記エラーが発生します。
自分で試したこと
-
作業にはPyCharmの仮想環境を使用していましたが、
純粋なコマンドプロンプト上からの実行でもエラーは発生しました。 -
ソースコード2行目を以下のように変更しても、エラーは発生しました。
matplotlib.pyplot.plot(0, 0)
-
エラー発生手順の2を飛ばす、つまり"Subplot configuration tool"
ウィンドウが表示されたままFigureを×ボタンで閉じると、
このエラーは発生しませんでした。 -
matplotlibの"Configure subplots"について検索したものの、
ほとんど情報が見つかりませんでした。 -
matplotlibでのTclErrorについても調べてみましたが、
上記エラーと合致するものは見つかりませんでした。
0