Comment obtenir une liste de toutes les polices actuellement disponibles pour Matplotlib?
Par exemple, quand je veux définir font
dans
matplotlib.rc('font', **font)
Merci.
29
demandé sur
nye17
2012-01-06 09:38:14
3 réponses
Pour obtenir une liste (lisible) de polices disponibles pour matplotlib
:
import matplotlib.font_manager
flist = matplotlib.font_manager.get_fontconfig_fonts()
names = [matplotlib.font_manager.FontProperties(fname=fname).get_name() for fname in flist]
print names
Le documentation recommande get_fontconfig_fonts()
:
C'est un moyen facile de saisir toutes les polices que l'utilisateur veut faire disponible pour les applications, sans avoir besoin de savoir où tous résider.
Notez que vous pouvez obtenir le nom (inverse) à la recherche de police facilement en utilisant la classe FontProperties
:
font = matplotlib.font_manager.FontProperties(family='TeX Gyre Heros')
file = matplotlib.font_manager.findfont(font)
findfont
est robuste car il renvoie une police par défaut si elle ne trouve pas de correspondance propriété.
17
répondu
alodi
2016-09-05 12:52:58
Par ce blog, ce code, vous obtiendrez des polices disponibles et des échantillons:
import matplotlib.font_manager
from IPython.core.display import HTML
def make_html(fontname):
return "<p>{font}: <span style='font-family:{font}; font-size: 24px;'>{font}</p>".format(font=fontname)
code = "\n".join([make_html(font) for font in sorted(set([f.name for f in matplotlib.font_manager.fontManager.ttflist]))])
HTML("<div style='column-count: 2;'>{}</div>".format(code))
Par exemple:
2
répondu
Max Ghenis
2018-02-24 00:19:34