我无法将使用 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.
<argument> ...rd, \(\displaystyle p(w|\boldsymbol
{\pi }_{ML})\)}
<*> ...displaystyle p(w|\boldsymbol{\pi}_{ML})\)}}
! ==> Fatal error occurred, no output PDF file produced!
Transcript written on texput.log.
我认为包括\usepackage{bm}
在我的序言中会绕过这个问题?
任何帮助将不胜感激!