更改jupyter笔记本中的默认matplotlib值

时间:2018-03-04 20:42:04

标签: python jupyter-notebook

我想知道如何永久更改matplotlib.rcParams而不是每次打开jupyter笔记本时都指示它。 (比如将配置文件更改为默认值)。

由于

1 个答案:

答案 0 :(得分:0)

一个简短的答案,也供个人参考...

尽管如此,我仍然希望在代码中表明它。但是,不必在每个参数上都完成此操作,因为它可以在一行中调用例如 style 文件。

无论如何,这里有几种方法,从最持久的更改到最软,最细微的参数更改方法:

1。更改默认配置文件

更改matplotlibrc文件中的默认参数,您可以使用以下方法找到其位置:

import matplotlib as mpl
mpl.get_configdir()

2。修改iPython配置文件

通过修改~/.ipython/profile_default/ipython_kernel_config.py中的选项或在配置文件所在的位置(ipython locate profile进行查找)来更改iPython中matplotlib默认选项的加载方式(有关详细信息,请参见this answer

3。创建自己的样式

您可以创建自己的自定义rcParams文件,并将其存储在.config/matplotlib/stylelib/*.mplstyleos.path.join(matplotlib.get_configdir(), stylelib)所在的任何位置。

文件应采用以下格式,类似于matplotlibrc,例如my_dark.mplstyle

axes.labelcolor: white
axes.facecolor : 333333
axes.edgecolor : white
ytick.color : white
xtick.color : white
text.color : white
figure.facecolor : 0D0D0D

这是带有白色轴和白色刻度标签的深色背景样式的示例。

要使用它,请在绘图前致电:

import matplotlib.pyplot as plt
plt.style.use("my_dark")
# Note that matplotlib has already several default styles you can chose from

您可以一次使用几个 覆盖样式,最后一个覆盖其前身的参数。这对于保持例如特定样式(纸样,演示文稿)的字体变量,但同时通过覆盖所有与颜色相关的参数,在顶部切换暗模式。 使用类似plt.style.use(["paper_fonts", "my_dark"])

documentation中有更多信息。

4。 rc_params的上下文管理器

您还可以使用上下文管理器,我认为该选项非常有用,

import matplotlib as mpl
import matplotlib.pyplot as plt

with mpl.rc_context(rc={'text.usetex': True}, fname='screen.rc'):
    plt.plot(x, a)

plt.plot(x, b)

这里,我们使用文件screen.rc中定义的第一组参数,然后仅为text.usetex调整plt.plot(x,a)的值,而plt.plot(x, b)将使用另一个参数(默认此处)一组rc参数。

再次,请参见the doc