使用Windows 10,anaconda作为程序包管理器。我有一个运行python 3.7的基本环境,其中matplotlib可以正常工作。创建新环境并同时安装keras和matplotlib时,我开始遇到问题:
>>> import matplotlib.pyplot as plt
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\...\Anaconda3\envs\keras_env\lib\site-packages\matplotlib\__init__.py", line 1111, in <module>
rcParamsOrig = RcParams(rcParams.copy())
File "C:\...\Anaconda3\envs\keras_env\lib\site-packages\matplotlib\__init__.py", line 891, in __getitem__
from matplotlib import pyplot as plt
File "C:\...\Anaconda3\envs\keras_env\lib\site-packages\matplotlib\pyplot.py", line 32, in <module>
import matplotlib.colorbar
File "C:\...\Anaconda3\envs\keras_env\lib\site-packages\matplotlib\colorbar.py", line 40, in <module>
import matplotlib._constrained_layout as constrained_layout
File "C:\...\Anaconda3\envs\keras_env\lib\site-packages\matplotlib\_constrained_layout.py", line 52, in <module>
from matplotlib.legend import Legend
File "C:\...\Anaconda3\envs\keras_env\lib\site-packages\matplotlib\legend.py", line 43, in <module>
from matplotlib.offsetbox import HPacker, VPacker, TextArea, DrawingArea
File "C:\...\Anaconda3\envs\keras_env\lib\site-packages\matplotlib\offsetbox.py", line 33, in <module>
from matplotlib.image import BboxImage
File "C:\...\Anaconda3\envs\keras_env\lib\site-packages\matplotlib\image.py", line 19, in <module>
from matplotlib.backend_bases import FigureCanvasBase
File "C:\...\Anaconda3\envs\keras_env\lib\site-packages\matplotlib\backend_bases.py", line 46, in <module>
from matplotlib import (
ImportError: cannot import name 'get_backend'
有什么建议吗?这是conda的全新安装。我到这里要做的就是运行conda create --name keras_env keras matplotlib
,进入环境,然后尝试导入matplotlib。这些是conda安装的软件包:
## Package Plan ##
environment location: C:\...\Anaconda3\envs\keras_env
added / updated specs:
- keras
- matplotlib
The following NEW packages will be INSTALLED:
_tflow_select: 2.2.0-eigen
absl-py: 0.5.0-py36_0
astor: 0.7.1-py36_0
blas: 1.0-mkl
ca-certificates: 2018.03.07-0
certifi: 2018.10.15-py36_0
cycler: 0.10.0-py36h009560c_0
freetype: 2.9.1-ha9979f8_1
gast: 0.2.0-py36_0
grpcio: 1.12.1-py36h1a1b453_0
h5py: 2.8.0-py36h3bdd7fb_2
hdf5: 1.10.2-hac2f561_1
icc_rt: 2017.0.4-h97af966_0
icu: 58.2-ha66f8fd_1
intel-openmp: 2019.0-118
jpeg: 9b-hb83a4c4_2
keras: 2.2.4-0
keras-applications: 1.0.6-py36_0
keras-base: 2.2.4-py36_0
keras-preprocessing: 1.0.5-py36_0
kiwisolver: 1.0.1-py36h6538335_0
libpng: 1.6.35-h2a8f88b_0
libprotobuf: 3.6.0-h1a1b453_0
markdown: 3.0.1-py36_0
matplotlib: 3.0.0-py36hd159220_0
mkl: 2019.0-118
mkl_fft: 1.0.6-py36hdbbee80_0
mkl_random: 1.0.1-py36h77b88f5_1
numpy: 1.15.3-py36ha559c80_0
numpy-base: 1.15.3-py36h8128ebf_0
openssl: 1.0.2p-hfa6e2cd_0
pip: 10.0.1-py36_0
protobuf: 3.6.0-py36he025d50_0
pyparsing: 2.2.2-py36_0
pyqt: 5.9.2-py36h6538335_2
python: 3.6.7-h33f27b4_0
python-dateutil: 2.7.3-py36_0
pytz: 2018.5-py36_0
pyyaml: 3.13-py36hfa6e2cd_0
qt: 5.9.6-vc14h1e9a669_2
scipy: 1.1.0-py36h4f6bf74_1
setuptools: 40.4.3-py36_0
sip: 4.19.8-py36h6538335_0
six: 1.11.0-py36_1
sqlite: 3.25.2-hfa6e2cd_0
tensorboard: 1.11.0-py36he025d50_0
tensorflow: 1.11.0-eigen_py36h346fd36_0
tensorflow-base: 1.11.0-eigen_py36h45df0d8_0
termcolor: 1.1.0-py36_1
tornado: 5.1.1-py36hfa6e2cd_0
vc: 14.1-h0510ff6_4
vs2015_runtime: 14.15.26706-h3a45250_0
werkzeug: 0.14.1-py36_0
wheel: 0.32.2-py36_0
wincertstore: 0.2-py36h7fe50ca_0
yaml: 0.1.7-hc54c509_2
zlib: 1.2.11-h8395fce_2
答案 0 :(得分:15)
此问题已报告here,并已修复here。该修补程序将在matplotlib 3.0.1中提供,该版本计划在未来几天内发布。
直到您可以将python <= 3.6.6与matplotlib 3.0.0一起使用。或者,您可以使用matplotlib 2.2.3,也可以尝试在the linked issue中提出的修复程序,即在matplotlib找到它的路径之一中创建matplotlibrc文件。
答案 1 :(得分:2)
尝试一下:
pip uninstall matplotlib
python -m pip install --upgrade pip
pip install matplotlib
为我完美地工作
答案 2 :(得分:0)
pip uninstall matplotlib
pip install --upgrade matplotlib
工作完美!