我正在Matplotlib中创建一个像这样的人物:
from matplotlib import pyplot as plt
fig = plt.figure()
plt.plot(data)
fig.suptitle('test title')
plt.xlabel('xlabel')
plt.ylabel('ylabel')
fig.savefig('test.jpg')
我想指定图 Headers 和轴标签的字体大小 . 我需要三个不同的字体大小,所以设置全局字体大小( mpl.rcParams['font.size']=x
)不是我想要的 . 如何单独设置图 Headers 和轴标签的字体大小?
4 回答
处理
label
,title
等文本的函数接受与matplotlib.text.Text相同的参数 . 对于字体大小,您可以使用size/fontsize
:对于全局设置
title
和label
尺寸,mpl.rcParams包含axes.titlesize
和axes.labelsize
. (来自页面):(据我所知,没有办法单独设置
x
和y
标签尺寸 . )而且我看到
axes.titlesize
不会影响suptitle
. 我想,你需要手动设置 .您也可以通过rcParams字典全局执行此操作:
如果您更习惯使用
ax
对象进行绘图,您可能会发现ax.xaxis.label.set_size()
更容易记住,或者至少更容易使用ipython终端中的tab找到 . 看来效果似乎需要重绘操作 . 例如:我不知道在创建之后设置suptitle大小的类似方法 .
要仅修改 Headers 的字体(而不是轴的字体),我使用了这个:
除了来自matplotlib.text.Text的所有kwargs之外的fontdict .