2

我正在做一些绘图实验,我喜欢大情节,即大图上的情节。所以我必须手动做

plt.figure(figsize=(15,8))
myplotcode

每次。我想知道无论如何我figsize在启动时将其设置为常量,并且每次都不要手动使用它。

谢谢

4

2 回答 2

3

MatplotLibto 中可以编辑基本参数,这些参数以 dict 形式排列。您实际上可以更改每个默认参数。在你的情况下,它会是这样的:

rcParams["figure.figsize"] = [15, 8]

有关您可以更改的更多参数,您可以查看文档

于 2020-07-27T11:07:42.367 回答
2

如果您想永远设置图形大小,您可以将您的首选项(不仅是图形大小)存储在一个初始化文件中,命名为matplotlibrc

在类似 linux/Unix 的系统上

$ mkdirhier ~/.config/matplotlib
$ echo "figure.figsize     : 10, 7" >> /home/boffi/.config/matplotlib/matplotlibrc
$ python
...
>>> import matplotlib.pyplot
>>> matplotlib.pyplot.figure()
<Figure size 1000x700 with 0 Axes> 
>>> # the above size is in pixels, at the default of 100 dpi
>>> 

要知道配置目录的位置,您可以这样做

$ python
...
>>> import matplotlib
>>> matplotlib.get_configdir()
'/home/user1001/.config/matplotlib'
>>> 

初始化文件对您有好处,但如果您想将脚本分发给其他人,使用不同的初始化文件,那么它就不再那么好了!

一种可能的补救措施是使用 Matplotlib 的样式表 ,它允许您使用单个语句加载所有调整

plt.style.use('./mystyle.mplstyle')

以及使用样式作为上下文管理器的可能性

plt.plot(...)         # default style
with plt.style.context('./mystyle.mplstyle'):
     plt.plot(...)    # your style

这样您就可以将样式表与脚本一起分发,并且您的用户不会受到全局修改默认值的影响。

于 2020-07-27T11:32:31.357 回答