Matplotlib字体系列: 使用Arno Pro或其他字体

4

我正在使用Arno Pro字体撰写我的论文,并希望由matplotlib生成的图片的字体与论文中的字体相匹配。Matplotlib的文档声称:

The font.family property has five values: 'serif' (e.g., Times),
'sans-serif' (e.g., Helvetica), 'cursive' (e.g., Zapf-Chancery),
'fantasy' (e.g., Western), and 'monospace' (e.g., Courier).

能否在matplotlib的标签中使用Arno Pro或其他字体系列?如果可以,怎么做呢?

谢谢。

1个回答

2

可以使用字体管理器查找所有可用的字体:

import matplotlib.font_manager
print matplotlib.font_manager.findSystemFonts(fontpaths=None)

这将打印出所有可用的字体列表,我找不到Arno Pro,但也许你可以找到一个.ttf文件(或类似的文件),然后像下面这样做:

import matplotlib.pylab as plt

plt.rcParams['font.family']='Sawasdee'

mpl.pylab.plot(range(10), mpl.pylab.sin(range(10)))
mpl.pylab.xlabel("Some crazy font", size=20)

生成:

在此输入图片描述

请注意,我从字体管理器输出中随机选择了一个名为Sawasdee的文件进行简化,因此您的计算机上可能未安装此字体,并会报错。

显然,这个字体也会产生一些错误,所以你需要小心处理,祝你好运!


我找到了Arno Pro的.ttf文件,同时这里是如何使用它的方法。 - creyesk

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接