根据官方指南,pylab
不再建议使用。matplotlib.pyplot
应该直接使用。
在全球范围内设置字体大小通过rcParams
应该做
import matplotlib.pyplot as plt
plt.rcParams['axes.labelsize'] = 16
plt.rcParams['axes.titlesize'] = 16
# or
params = {'axes.labelsize': 16,
'axes.titlesize': 16}
plt.rcParams.update(params)
# or
import matplotlib as mpl
mpl.rc('axes', labelsize=16, titlesize=16)
# or
axes = {'labelsize': 16,
'titlesize': 16}
mpl.rc('axes', **axes)
可以使用以下命令恢复默认值
plt.rcParams.update(plt.rcParamsDefault)
您还可以通过在matplotlib配置目录下的目录中创建样式表来完成此操作(您可以从中获取配置目录)。样式表格式为stylelib
matplotlib.get_configdir()
axes.labelsize: 16
axes.titlesize: 16
如果您有样式表,/path/to/mpl_configdir/stylelib/mystyle.mplstyle
则可以通过
plt.style.use('mystyle')
# or, for a single section
with plt.style.context('mystyle'):
# ...
您还可以创建(或修改)matplotlibrc文件共享格式
axes.labelsize = 16
axes.titlesize = 16
取决于您修改的matplotlibrc文件,这些更改将仅用于当前工作目录,不具有matplotlibrc文件的所有工作目录,或不具有matplotlibrc文件且没有其他matplotlibrc文件的所有工作目录。被指定。看到本节更多详细信息,定制matplotlib页面的。
rcParams
可以通过找到完整的键列表plt.rcParams.keys()
,但是要调整字体大小,请使用(此处引号为斜体)
axes.labelsize
- x和y标签的字体大小
axes.titlesize
- 轴标题的字体大小
figure.titlesize
- 图形标题的大小(Figure.suptitle()
)
xtick.labelsize
- 刻度标签的字体大小
ytick.labelsize
- 刻度标签的字体大小
legend.fontsize
-图例的字体大小(plt.legend()
,fig.legend()
)
legend.title_fontsize
-图例标题的字体大小,None
设置为与默认轴相同。有关用法示例,请参见此答案。
所有这些都接受字符串大小{'xx-small', 'x-small', 'smaller', 'small', 'medium', 'large', 'larger', 'x-large', 'xxlarge'}
或float
in pt
。字符串大小是相对于默认字体大小定义的,该默认大小由
font.size
- 文本的默认字体大小,以pts为单位。标准值为10点
此外,可以通过以下方式指定重量(尽管仅用于默认值)
font.weight
-所使用的字体的默认粗细text.Text
。接受{100, 200, 300, 400, 500, 600, 700, 800, 900}
或'normal'
(400),'bold'
(700)'lighter'
,和'bolder'
(相对于当前重量)。
mpl.rcParams['font.size'] = 20
值相加并尝试将其值更改为10和14。首先,我发现除非更改mpl
为,否则我会出错plt
。所做的更改清除了错误,但是代码行对我的标题或标签没有影响。确定此语法正确吗?