默认情况下如何让'matplotlib'使用我的LaTeX sans字体

时间:2013-12-21 18:57:23

标签: python fonts matplotlib latex

我尝试使用matplotlib生成数据,其中默认情况下所有文本都是sans-serif(Open Sans)。关于SO的一些问题以及Open Sans文档提出了类似

的内容
matplotlib.rc('text', usetex=True)
matplotlib.rcParams['text.latex.preamble'] = [
    r'\usepackage[default,scale=0.85]{opensans}'
]

应该可以工作,但我看到了serif字体。例如,上面使用了类似于Computer Modern和

的内容
matplotlib.rcParams['text.latex.preamble'] = [
    r'\usepackage[charter,expert,euro]{mathdesign}',
    r'\usepackage[default,scale=0.85]{opensans}'
]

使用宪章。添加\renewcommand{\familydefault}{\sfdefault}之类的内容无效。

如何强制matplotlib使用LaTeX,默认情况下对所有文本(轴,标签,注释等)使用指定的sans-serif字体?


FWIW,当我不使用LaTeX(text.usetex=False)I don't get Open Sans as expected时,我确实得到了sans-serif。例如

font = {'family': 'sans-serif', 'sans-serif': ['Open Sans','sans-serif']}
plt.rc('font', **font)

导致sans-serif字体不是Open Sans。我在其他工具或应用程序中使用Open Sans没有任何问题,包括LaTeX / TeX工具。

0 个答案:

没有答案