Я пытаюсь, чтобы мои текстовые метки в 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'
, или решение проблемы со шрифтом не найдено