Подтвердить что ты не робот

Как получить список всех шрифтов, доступных в настоящее время для Matplotlib?

например. когда я хочу установить font в

matplotlib.rc('font', **font)

Спасибо.

4b9b3361

Ответ 1

import matplotlib.font_manager
matplotlib.font_manager.findSystemFonts(fontpaths=None, fontext='ttf')

Отметьте этот для других параметров.

Ответ 2

Чтобы получить (читаемый) список шрифтов, доступных для 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

Документация рекомендует get_fontconfig_fonts():

Это простой способ захватить все шрифты, которые пользователь хочет сделать доступный для приложений, без необходимости знать, где все они проживаете.

Обратите внимание, что вы можете легко получить (обратное) имя для поиска шрифтов, используя класс FontProperties:

font = matplotlib.font_manager.FontProperties(family='TeX Gyre Heros')
file = matplotlib.font_manager.findfont(font)

findfont является надежным, так как он возвращает шрифт по умолчанию, если он не может найти соответствующие свойства.

Ответ 3

Согласно этому сообщению, этот код предоставит вам шрифты и образцы:

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))

Например:

enter image description here