Hoe stel ik de lettergrootte in van de titel van de figuur en de aslabels in Matplotlib?
Ik maak een figuur in Matplotlib zoals dit:
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')
Ik wil lettergroottes specificeren voor de titel van de figuur en de aslabels. Ik heb voor alle drie verschillende lettergroottes nodig, dus het instellen van een globale lettergrootte (mpl.rcParams['font.size']=x
) is niet wat ik wil. Hoe stel ik de lettergrootte voor de figuurtitel en de aslabels afzonderlijk in?
458
3
Functies die te maken hebben met tekst zoals
label
,title
, enz. accepteren dezelfde parameters als matplotlib.text.Text. Voor de lettergrootte kun jesize/fontsize
gebruiken:Voor het globaal instellen van
title
enlabel
grootte, bevatmpl.rcParams
axes.titlesize
enaxes.labelsize
. (Van de pagina):(Voor zover ik kan zien, is er geen manier om
x
eny
label sizes apart in te stellen).En ik zie dat
axes.titlesize
geen invloed heeft opsuptitle
. Ik denk dat je dat handmatig moet instellen.Je kunt dit ook globaal doen via een rcParams dictionary:
Als je meer gewend bent om
ax
objecten te gebruiken om je plotten te doen, vind je deax.xaxis.label.set_size()
misschien makkelijker te onthouden, of in ieder geval makkelijker te vinden met tab in een ipython terminal. Het lijkt erop dat een redraw operatie nodig is om het effect te zien. Bijvoorbeeld:Ik ken geen vergelijkbare manier om de suptitle grootte in te stellen nadat het is gemaakt.