Python 安装pyside后matplotlib的默认后端设置不正确
我在Ubuntu 14.04上使用Python 安装pyside后matplotlib的默认后端设置不正确,python,matplotlib,pyside,Python,Matplotlib,Pyside,我在Ubuntu 14.04上使用pyenv安装了Python版本3.4.2,然后安装了pyside: $ pip install pyside 然后安装numpy和matplotlib: $ pip install numpy $ pip install matplotlib 如果我现在尝试从ipython导入matplotlib: In [1]: import matplotlib /home/hakon/.pyenv/versions/3.4.2/lib/python3.4/site-
pyenv
安装了Python版本3.4.2,然后安装了pyside
:
$ pip install pyside
然后安装numpy
和matplotlib
:
$ pip install numpy
$ pip install matplotlib
如果我现在尝试从ipython
导入matplotlib
:
In [1]: import matplotlib
/home/hakon/.pyenv/versions/3.4.2/lib/python3.4/site-packages/matplotlib/__init__.py:1039: UserWarning: Bad val "pyside" on line #39
"backend : pyside
"
in file "/home/hakon/.pyenv/versions/3.4.2/lib/python3.4/site-packages/matplotlib/mpl-data/matplotlibrc"
Key backend: Unrecognized backend string "pyside": valid strings are ['emf', 'GTK', 'GTK3Agg', 'nbAgg', 'CocoaAgg', 'GTKAgg', 'pgf', 'agg', 'Qt4Agg', 'pdf', 'ps', 'cairo', 'MacOSX', 'WX', 'WebAgg', 'gdk', 'svg', 'TkAgg', 'GTK3Cairo', 'template', 'Qt5Agg', 'WXAgg', 'GTKCairo']
(val, error_details, msg))
如果编辑matplotlib
cofiguration文件:
/home/hakon/.pyenv/versions/3.4.2/lib/python3.4/site packages/matplotlib/mpl data/matplotlibrc
:我可以看到它有一行:
backend : pyside
如果我将此更改为:
backend : Qt4Agg
backend.qt4 : PySide
它很好用
问题是:为什么
matplotlibrc
文件首先有一个无效的后端(pyside
)值?我不知道为什么您安装的matplotlib包中的matplotlibrc中有废话。您可能希望直接向的开发人员询问这一点
但是,可以通过编程方式覆盖这些设置,然后应独立于任何此类设置
import matplotlib
matplotlib.use('Qt4Agg')
matplotlib.rcParams['backend.qt4']='PySide'
pyqt5
是每个anaconda
的默认安装版本,因此最好使用matplotlib.use('Qt5Agg')
导入matplotlib
matplotlib.use('Qt5Agg')
必须与包装有关。在Windows here和Matplotlib 1.4.2上,默认后端为Qt4Agg,默认后端为PyQt.qt4。谢谢@Trilarion。我已经在matplotlib邮件列表中问了一个问题: