matplotlib在IPython中不使用matplotlibrc文件

时间:2017-01-25 21:51:59

标签: python matplotlib ipython

我最近从v2.0.0升级了matplotlib v1.5.3,但是在这个改变的情况下,似乎matplotlib在绘制数字时不再使用我编辑过的matplotlibrc文件。当我打开matplotlibrc文件时,我发现我的更改实际上已实现,但是当我键入matplotlib.rcParams时,不会显示这些更改。考虑到它可能正在查看不同的matplotlibrc文件,我运行matplotlib.matplotlib_fname(),但这指向我编辑的matplotlibrc文件的同一目录。

有谁知道这里发生了什么?

仅供参考,我使用IPython 5.1.0在Python 2.7.12中运行matplotlib 2.0.0。要在IPython中打开matplotlib,我首先使用命令%matplotlib

2 个答案:

答案 0 :(得分:1)

在matplotlib 2.0.0中,Linux上matplotlibrc文件的默认位置已从

移出
~/.matplotlib/matplotlibrc

~/.config/matplotlib/matplotlibrc 

尝试将自定义文件移动到那里,看看它是否有效。当我从1.5.3移动到2.0.0时,这对我有用。

有关如何找到正确的matplotlibrc文件的详细信息,请参阅docs

答案 1 :(得分:0)

对我来说,问题在于matplotlibrc 正在工作,然后iPython在单元格末尾overriding it处。检查此方法的方法是导入matplotlib并在同一单元格中打印plt.rcParams字典,然后再次运行同一单元格。如果在两次调用之间发生变化,则iPython会覆盖它。

解决方法是添加

c.InteractiveShellApp.matplotlib = 'inline'
c.InlineBackend.rc = {}

您的ipython_config.py。第二行告诉iPython不要更新rParams字典。