MatplotlibがTkinterでどのように機能するかをテストする this の例を実行しようとすると、エラーが発生します。
(env)fieldsofgold@fieldsofgold-VirtualBox:~/new$ python test.py
Traceback (most recent call last):
File "test.py", line 7, in <module>
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg, NavigationToolbar2TkAgg
File "/home/fieldsofgold/new/env/local/lib/python2.7/site-packages/matplotlib/backends/backend_tkagg.py", line 13, in <module>
import matplotlib.backends.tkagg as tkagg
File "/home/fieldsofgold/new/env/local/lib/python2.7/site-packages/matplotlib/backends/tkagg.py", line 7, in <module>
from matplotlib.backends import _tkagg
ImportError: cannot import name _tkagg
提供されているソリューションを使用して here を使用して、matplotlibをアンインストールし、次のコマンドを使用してtkおよびtk-devパッケージをインストールしようとしました。
Sudo apt-get install tk8.5
Sudo apt-get install tk-dev
その後、pip install matplotlib
によって再度matplotlibを再インストールしますが、それでも同じエラーが発生します。任意の助けいただければ幸いです。私はVirtualBoxでUbuntu 14.04を使用しており、virtualenv環境内で作業しています。本当にありがとう。
私はこれに遭遇しました(Ubuntu 15.10ですが同じ考えです)、それを修正しました:
Sudo apt-get install tk-dev
pip uninstall -y matplotlib
pip --no-cache-dir install -U matplotlib
3番目のステップは重要なステップだったと思います。キャッシュが許可されている場合、pip
は以前にビルドされたmatplotlib
のインストールを使用しているように見えます。
以前にビルドしたmatplotlibを手動で削除することもできます。 Ubuntuでは~/.cache/pip
どこかに。 (残念ながら、pipがキャッシュをクリーンアップする方法が見つかりませんでした。)
Windows 10上のPython 3.7.4は、NavigationToolbar2TkAggをNavigationToolbar2Tkに置き換えることで機能します。
matplotlib.backends.backend_tkagg importから(FigureCanvasTkAgg、NavigationToolbar2TkAgg)
matplotlib.backends.backend_tkagg import(FigureCanvasTkAgg、NavigationToolbar2Tk)から
このシナリオに従ってください:
Sudo apt-get update
Sudo apt-get install tk tk-dev
Sudo pip uninstall matplotlib
Sudo pip install matplotlib
編集:
試してください:
Sudo pip uninstall matplotlib
Sudo apt-get install python-matplotlib
EDIT2:
Sudo apt-get install tk8.6-dev
Sudo apt-get remove python-matplotlib
Sudo apt-get install python-matplotlib
この質問 に対する1つの回答は、エラーがVisual Studio 2015のVisual C++再頒布可能パッケージがないために発生していることを示唆しています。インストールすることで問題は解決しました。