\ mathcal не работает в Matplotlib с пользовательским шрифтом - PullRequest
0 голосов
/ 31 марта 2020

Я пишу свою диссертацию. Я использую шрифт Libertinus. Файлы шрифтов хранятся в каталоге texmf/fonts/. Я компилирую файл tex с xelatex.

Для создания графиков я использую Matplotlib. Вот MWE.

import numpy as np
import matplotlib as mpl
mpl.use("pgf")               # to use xelatex
import matplotlib.pyplot as plt
plt.rcParams.update({
    "font.family": "serif",  
    "text.usetex": True,     
    "pgf.rcfonts": False,   
    "pgf.preamble": [
         "\\usepackage{unicode-math}",  
         r"\setmathfont{libertinusmath-regular.otf}",
         r"\setmainfont{libertinusserif-regular.otf}",
         r"\setsansfont{libertinussans-regular.otf}",
         ]
})


mpl.rc('font', size=12)
mpl.rc('lines', lw=1.)

fig, ax = plt.subplots(figsize=(6.25,6.25*0.75))

ax.plot(np.linspace(0,10,10), np.linspace(0,10,10)*2)
ax.set_title(r'$\mathcal{P}$')

plt.savefig('figure.png', format='png')

Однако в заголовке сюжета \mathcal не работает. Посмотрите на 'P' в заголовке. Вот результат:

enter image description here

Принимая во внимание, что в документе, сгенерированном из Latex, он выглядит так, как и должен быть. Вот что я ожидаю.

enter image description here

Я пытался найти решение в течение одного часа. Может ли кто-нибудь помочь мне с этим? Спасибо.

...