Je dois taper des lettres grecques et le symbole Angstrom dans les étiquettes des axes d'un complot. Donc par exemple
fig.gca().set_xlabel("$wavelength\, (Angstrom)$")
fig.gca().set_ylabel("$lambda$")
sauf que je veux réellement "Angstrom" et "lambda" remplacés par des symboles réels. Comment dois-je faire cela? Merci!
Vous pouvez non seulement ajouter des chaînes brutes à matplotlib, mais vous pouvez également spécifier la police dans matplotlibrc ou localement avec:
from matplotlib import rc
rc('font', **{'family':'serif','serif':['Palatino']})
rc('text', usetex=True)
Cela changerait votre police serif latex. Vous pouvez également spécifier le sans-serif Helvetica comme si
rc('font',**{'family':'sans-serif','sans-serif':['Helvetica']})
Les autres options sont cursive
et monospace
avec leurs noms de police respectifs. Votre étiquette serait alors
fig.gca().set_xlabel(r'wavelength $5000 \AA$')
Si la police ne contient pas de symbole Angstrom, vous pouvez utiliser \mathring{A}
Vous devez créer les chaînes raw et utiliser latex :
fig.gca().set_ylabel(r'$\lambda$')
À partir de matplotlib 2.0, la police par défaut supporte la plupart des alphabets occidentaux et peut simplement faire
ax.set_xlabel('λ')
avec unicode.
Si vous voulez avoir une chaîne normale devant la lettre grecque, assurez-vous que vous avez le bon ordre:
plt.ylabel(r'Microstrain [$\mu \epsilon$]')
Python 3.x: les petites lettres grecques sont codées de 945 à 969 donc alpha est chr(945)
, oméga est chr(969)
donc saisissez simplement
print(chr(945))
la liste des petites lettres grecques dans une liste:
greek_letterz=[chr(code) for code in range(945,970)]
print(greek_letterz)
Et maintenant, alpha est greek_letterz[0]
, la bêta est greek_letterz[1]
, a.s.o
Pourquoi ne pas simplement utiliser les caractères littéraux?
fig.gca().set_xlabel("wavelength, (Å)")
fig.gca().set_ylabel("λ")
Vous devrez peut-être ajouter ceci au fichier si vous utilisez python 2:
# -*- coding: utf-8 -*-
from __future__ import unicode literals # or use u"unicode strings"
Il peut être plus facile de définir des constantes pour les caractères difficiles à saisir sur votre clavier.
ANGSTROM, LAMDBA = "Åλ"
Ensuite, vous pouvez les réutiliser ailleurs.
fig.gca().set_xlabel("wavelength, (%s)" % ANGSTROM)
fig.gca().set_ylabel(LAMBDA)