MayaVi: mlab segfaults on display



我正在努力学习MayaVi,但在开头的数字上卡住了。

在mlab中显示数字只会导致segfault。我画的似乎并不重要,所以我认为问题在于展示的行为,而不是我试图展示的对象。例如:

import numpy as np
from mayavi import mlab
x = y = np.arange(-5, 5, 1)
s = np.meshgrid(x, y)
mlab.surf(s)

导致错误:

Segmentation fault (core dumped)

我在Linux上使用Python 2.7.3,EPD 7.3-1(64位)。

编辑:如果我试图显示一个图像,我实际上会遇到一个不同的错误,这是我的目标之一。

import numpy as np
from mayavi import mlab
from PIL import Image
img = Image.open('milkyway.png')
mlab.imshow(img)

中的结果

Fatal error in __driConfigOptions line 108393789, column 108392770: parsing finished.
Abort (core dumped)

编辑2:好吧,打开数字肯定是个问题,因为如果我只是测试:

from mayavi import mlab
mlab.figure()

我得到了最初的错误(一个segfault)。

我没有使用Enthought,但我遇到了类似的segfault错误,并在这里找到了帮助:

https://github.com/enthought/mayavi/issues/450

他们说这是Qt4(VTK使用)和Qt5(Mayavi使用)之间的兼容性问题,并建议切换到wx。为此,请在终端中运行以下命令:

export ETS_TOOLKIT=wx

然后,您应该能够从同一个终端运行Enthough或您的Python。

如果这样做有效,您还可以考虑将上述行添加到~/.profile.d中,以便在启动终端时自动执行导出。我不知道这怎么会自动包含在Enthought中,对不起。

我希望这会有所帮助,马亚维一旦开始运行就很好!

相关内容

  • 没有找到相关文章

最新更新