1

我试图弄清楚如何让 mathtext 在 python matplotlib 中工作。

他们提供了一些我在下面复制的小示例代码:

import numpy as np
import matplotlib.pyplot as plt
t = np.arange(0.0, 2.0, 0.01)
s = np.sin(2*np.pi*t)

plt.plot(t,s)
plt.title(r'$\alpha_i > \beta_i$', fontsize=20)
plt.text(1, -0.6, r'$\sum_{i=0}^\infty x_i$', fontsize=20)
plt.text(0.6, 0.6, r'$\mathcal{A}\mathrm{sin}(2 \omega t)$',
     fontsize=20)
plt.xlabel('time (s)')
plt.ylabel('volts (mV)')
plt.show()

当我尝试运行此代码时,会收到很多如下所示的警告: /usr/lib/python2.7/site-packages/matplotlib/font_manager.py:1242: UserWarning: findfont: Font family ['cmtt10'] not found. Falling back to Bitstream Vera Sans (prop.get_family(), self.defaultFamily[fontext]))

并且数学文本无法正确呈现。该图如下所示:

带有损坏字体的图

什么时候应该是这样的:

身材应该怎么看

4

1 回答 1

0

显然,这是 matplotlib 旧版本的错误,该版本位于我的 fedora 存储库中。我下载并安装了最新版本,这修复了错误。

要获得最新版本,我必须从源代码构建它。按照 matplotlib安装说明页面中的说明,

首先,获取构建依赖项: sudo yum-builddep python-matplotlib

然后,从下载页面获取最新的 .tar.gz(撰写本文时为 1.2 版)

然后,其余的由 python 安装脚本处理。

cd matplotlib // wherever the .tar.gz was extracted to.
python setup.py build
python setup.py install
于 2013-03-04T18:43:45.340 回答