Matplotlib не может найти курсивный шрифт - PullRequest
0 голосов
/ 24 мая 2018

Я пытаюсь, чтобы мои текстовые метки в matplotlib были шрифтом Arial.Взяв от здесь , я попробовал следующее:

plt.rcParams['mathtext.it'] = 'Arial:italic'
plt.rcParams['mathtext.rm'] = 'Arial'
plt.rcParams['mathtext.default'] = 'regular'
plt.rcParams['font.serif'] = 'Arial'
plt.rcParams['font.family'] = 'Arial'

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

label_name = r'$\mathit{%s}$ %s' % (gene, splice)
ax1c.set_ylabel(label_name, fontsize=8, labelpad=17)

шрифт оказывается не Arial.Я получаю то же самое, когда я пытаюсь r'$\it{%s} $ %s' % (gene, splice) также.Я пробовал обе следующие две строки кода:

plt.rcParams['mathtext.fontset'] = 'custom'
mpl.rcParams['mathtext.fontset'] = 'custom'

, однако, ни одна из них не работает, и оба возвращают следующую ошибку:

/home/soma/anaconda3/lib/python3.6/site-packages/matplotlib/font_manager.py:1320: UserWarning: findfont: Font family ['cursive'] not found. Falling back to DejaVu Sans
(prop.get_family(), self.defaultFamily[fontext]))

Лучшая ссылка, которую я нашел для исправленияэта проблема была здесь .Я пробовал следующее:

  • Выйти из Jupyter
  • sudo apt установить диспетчер шрифтов
  • sudo apt установить msttcorefonts -qq
  • rm ~ /.cache / matplotlib -rf
  • перезапустить Jupyter

, но я продолжаю получать ту же ошибку.

Буду признателен за альтернативу решению rcParams['mathtext.fontset'] = 'custom', или решение проблемы со шрифтом не найдено

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