【问题标题】:problems with usetex in OSX 10.8OSX 10.8 中 usetex 的问题
【发布时间】:2012-08-01 14:32:36
【问题描述】:

我最近升级到 OSX 10.8 (Mountain Lion),如果我尝试在绘图标签中使用乳胶标记,我的 python 安装现在行为异常。

以下代码运行完美:

plt.figure()
plt.plot( rand(51), rand(51) )
plt.show()

但是,这不是:

plt.rc( 'text', usetex=True )
plt.figure()
plt.plot( rand(51), rand(51) )
plt.show()

我得到的错误是:

Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/wx/_misc.py", line 1342, in Notify
    self.notify()
  File "/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/wx/_core.py", line 14716, in Notify
    self.result = self.callable(*self.args, **self.kwargs)
  File "/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/matplotlib/backends/backend_wx.py", line 990, in _onDrawIdle
    self.draw(*args, **kwargs)
  File "/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/matplotlib/backends/backend_wxagg.py", line 59, in draw
    FigureCanvasAgg.draw(self)
  File "/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/matplotlib/backends/backend_agg.py", line 401, in draw
    self.figure.draw(self.renderer)
  File "/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/matplotlib/artist.py", line 55, in draw_wrapper
    draw(artist, renderer, *args, **kwargs)
  File "/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/matplotlib/figure.py", line 884, in draw
    func(*args)
  File "/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/matplotlib/artist.py", line 55, in draw_wrapper
    draw(artist, renderer, *args, **kwargs)
  File "/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/matplotlib/axes.py", line 1983, in draw
    a.draw(renderer)
  File "/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/matplotlib/artist.py", line 55, in draw_wrapper
    draw(artist, renderer, *args, **kwargs)
  File "/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/matplotlib/axis.py", line 1037, in draw
    ticklabelBoxes, ticklabelBoxes2 = self._get_tick_bboxes(ticks_to_draw, renderer)
  File "/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/matplotlib/axis.py", line 988, in _get_tick_bboxes
    extent = tick.label1.get_window_extent(renderer)
  File "/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/matplotlib/text.py", line 747, in get_window_extent
    bbox, info = self._get_layout(self._renderer)
  File "/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/matplotlib/text.py", line 300, in _get_layout
    ismath=False)
  File "/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/matplotlib/backends/backend_agg.py", line 174, in get_text_width_height_descent
    renderer=self)
  File "/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/matplotlib/texmanager.py", line 608, in get_text_width_height_descent
    page = iter(dvi).next()
  File "/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/matplotlib/dviread.py", line 65, in __iter__
    have_page = self._read()
  File "/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/matplotlib/dviread.py", line 121, in _read
    self._dispatch(byte)
  File "/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/matplotlib/dviread.py", line 209, in _dispatch
    self._fnt_def(k, c, s, d, a, l, n)
  File "/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/matplotlib/dviread.py", line 362, in _fnt_def
    tfm = _tfmfile(n[-l:])
  File "/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/matplotlib/dviread.py", line 878, in _tfmfile
    return _fontfile(texname, Tfm, '.tfm', _tfmcache)
  File "/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/matplotlib/dviread.py", line 868, in _fontfile
    filename = find_tex_file(texname + suffix)
  File "/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/matplotlib/dviread.py", line 838, in find_tex_file
    pipe = subprocess.Popen(cmd, stdout=subprocess.PIPE)
  File "/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/subprocess.py", line 679, in __init__
    errread, errwrite)
  File "/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/subprocess.py", line 1228, in _execute_child
    raise child_exception
OSError: [Errno 2] No such file or directory

还有其他人遇到过这个问题吗?我该如何解决这个问题?

【问题讨论】:

  • 如果您在 StackOverflow 上没有得到满意的答案,您可能想在 Ask Different 上发布您的问题。

标签: python latex matplotlib osx-mountain-lion


【解决方案1】:

也许 TeX 和实用程序不在您的 $PATH 上?您应该进行设置,以便如果您在命令行上键入“tex”或“kpsewhich”,您将调用这些程序(即获取一些输出而不是“command not found”)。如果您之前安装了 TeX Live,请确保 /usr/texbin 在搜索路径中。

【讨论】:

  • 完成了这项工作,升级已经清除了我的 tex 路径。谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-27
  • 1970-01-01
相关资源
最近更新 更多