pyplot plt.text пользовательский шрифт - PullRequest
1 голос
/ 26 марта 2020

Я пытаюсь сделать картинку в python нестандартным шрифтом для некоторых именных бирок. Таким образом, конечная цель - иметь al oop, который сохраняет изображение с текстом так, как я хочу.

Afaik это должно работать, так как я изменил r c. Но шрифт plt.text по-прежнему по умолчанию. Кто-нибудь знает, как заставить это работать?

import matplotlib.pyplot as plt
from matplotlib import font_manager, rc

f_name = font_manager.FontProperties(fname='/Users/me/Library/Fonts/customfont.ttf').get_name()
rc('font', family=f_name)

plt.text(0, 0.6, r"$%s$" % 'test', fontsize = 50)

Вот пример того, что я получаю. Тики меняются, поэтому r c установлено правильно. Но текст не делает. enter image description here

1 Ответ

2 голосов
/ 26 марта 2020

Проблема, похоже, связана с нотацией $ ... $, которая должна переопределять свойства шрифта.

Попробуйте:

import matplotlib.pyplot as plt
from matplotlib import font_manager

# Path
path = '/path/to/custom/font.ttf'

# Create FontProperty object
font_prop = font_manager.FontProperties(fname=path)

# Apply font_prop to the text
plt.text(0, 0.6, 'Custom font !', font_properties=font_prop, fontsize = 50)


plt.show()

Вывод: enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...