Как включить жирный символ в ось при экспорте фигуры pgf с помощью matplotlib?

#python #matplotlib #latex #axis-labels #pgf

#питон #matplotlib #Латекс #оси-метки #pgf

Вопрос:

У меня возникли проблемы с экспортом графика, который я сделал с помощью matplotlib, в pgf. Без жирного символа на метке оси проблем нет, но с я получаю ошибку.

Вот мой код:

 import seaborn as sns import numpy as np import matplotlib as mpl mpl.rcParams.update(mpl.rcParamsDefault) mpl.use('pgf') mpl.rcParams.update({  'pgf.texsystem': "pdflatex",  'font.family': 'serif',  'text.usetex': True,  'pgf.rcfonts': False,  'font.serif': ["Computer Modern Roman"], }) mpl.rc('text.latex', preamble=r'usepackage{bm}') import matplotlib.font_manager import matplotlib.pyplot as plt  f, ax = plt.subplots(figsize = (8,4)) sns.set_color_codes("colorblind") b = sns.barplot(x=probs, y=words, color='b') ax.set(xlabel = r'{Probability of word, $p(w|boldsymbol{pi}_{ML})$}',  ylabel = r'{Word, $w$}' ) b.set_yticklabels(labels=b.get_yticklabels(), va='center') f.tight_layout() plt.savefig('graph.pgf', format='pgf')   

И ошибка, которую я получаю, такова:

 LatexError: LaTeX process halted ! Undefined control sequence. lt;argumentgt; ...rd, (displaystyle p(w|boldsymbol   {pi }_{ML}))} lt;*gt; ...displaystyle p(w|boldsymbol{pi}_{ML}))}}   ! ==gt; Fatal error occurred, no output PDF file produced! Transcript written on texput.log.  

Я думал, что включение usepackage{bm} в мою преамбулу позволило бы обойти эту проблему?

Любая помощь была бы вам очень признательна!

Комментарии:

1. можете ли вы показать полученный код pgf?

Ответ №1:

Во второй раз на этой неделе…многочасовые попытки отладки и поиска привели меня к тому, что я нашел решение сразу после публикации в stackoverflow.

Решение:

 mpl.rcParams.update({  'pgf.texsystem': "pdflatex",  'font.family': 'serif',  'text.usetex': True,  'pgf.rcfonts': False,  "pgf.preamble": "n".join([  r"usepackage{bm}",  ]),  'font.serif': ["Computer Modern Roman"],  'text.latex.preamble': pream, })