在使用py2app与Matplotlib和Tex格式时,找不到dvipng

2 投票
1 回答
1078 浏览
提问于 2025-04-16 04:06

我有一个在 OS X 10.6 上用 py2app 制作的应用程序,它使用 Matplotlib 来生成图表。(我用的是 py2app 版本 0.5.3 和 matplotlib 版本 0.99.3,如果这有关系的话。)我启用了 Tex 格式选项:

...
from matplotlib import rc
rc('text', usetex=True)
...

这个脚本在命令行中运行得很好,包括 Tex 格式的功能。这个应用程序是用 py2app 创建的:

py2applet --make-setup MyApplication.py
python setup.py py2app

创建或打开应用程序时没有错误。但是,当我在应用程序中尝试生成图表时,我遇到了错误:

RuntimeError: Could not obtain dvipng version

这是不是因为 py2app 没有把 dvipng 包含在应用程序里?解决这个问题的最好方法是什么?

1 个回答

1

通过在我的setup.py文件中添加:

OPTIONS = {'argv_emulation': True, 'packages':['matplotlib']}

当我从命令行打开应用程序时,这样做可以让它正常工作。不过奇怪的是,当我通过其他方式打开它(比如在应用程序文件夹里双击)时,还是会遇到我最开始的问题。目前还在寻找一个完整的解决办法。

撰写回答