我正在尝试从enthought mayavi模块导入mlab。我正在使用enthought冠层分布。
我收到以下一系列错误。我似乎无法在搜索中发现任何类似的错误。
有没有人对下一步有任何想法?
ImportError Traceback (most recent call last)
<ipython-input-11-3f0e4b94a8ea> in <module>()
----> 1 from mayavi import mlab
C:\...\Enthought\Canopy32\User\lib\site-packages\mayavi\mlab.py in <module>()
25
26 # Mayavi imports
---> 27 from mayavi.tools.camera import view, roll, yaw, pitch, move
28 from mayavi.tools.figure import figure, clf, gcf, savefig, \
29 draw, sync_camera, close, screenshot
C:\...\Enthought\Canopy32\User\lib\site-packages\mayavi\tools\camera.py in <module>()
23 # We can't use gcf, as it creates a circular import in camera management
24 # routines.
---> 25 from engine_manager import get_engine
26
27
C:\...\Enthought\Canopy32\User\lib\site-packages\mayavi\tools\engine_manager.py in <module>()
12 from mayavi.preferences.api import preference_manager
13 from mayavi.core.registry import registry
---> 14 from mayavi.core.engine import Engine
15 from mayavi.core.off_screen_engine import OffScreenEngine
16 from mayavi.core.null_engine import NullEngine
C:\...\Enthought\Canopy32\User\lib\site-packages\mayavi\core\engine.py in <module>()
25
26 # Local imports.
---> 27 from mayavi.core.base import Base
28 from mayavi.core.scene import Scene
29 from mayavi.core.common import error, process_ui_events
C:\...\Enthought\Canopy32\User\lib\site-packages\mayavi\core\base.py in <module>()
17 HasTraits, WeakRef, on_trait_change)
18 from traitsui.api import TreeNodeObject
---> 19 from tvtk.pyface.tvtk_scene import TVTKScene
20 from apptools.persistence import state_pickler
21 from pyface.resource.api import resource_path
C:\...\Enthought\Canopy32\User\lib\site-packages\tvtk\pyface\tvtk_scene.py in <module>()
22 Property, Instance, Event, Range, Bool, Trait, Str
23
---> 24 from tvtk.pyface import light_manager
25
26 VTK_VER = tvtk.Version().vtk_version
C:\...\Enthought\Canopy32\User\lib\site-packages\tvtk\pyface\light_manager.py in <module>()
128 # `CameraLight` class.
129 ######################################################################
--> 130 class CameraLight(HasTraits):
131
132 """This class manages a tvtk.Light object and a LightGlyph object."""
C:\...\Enthought\Canopy32\User\lib\site-packages\tvtk\pyface\light_manager.py in CameraLight()
144 activate = Trait(False, false,
145 desc="specifies if the light is enabled or not")
--> 146 source = Instance(tvtk.Light, ())
147
148 # FIXME: Traits Delegation does not work correctly and changes to
C:\...\Enthought\Canopy32\User\lib\site-packages\tvtk\tvtk_classes.zip\tvtk_classes\tvtk_helper.py in <lambda>(self)
204 LabelHierarchyIterator = property(lambda self: get_class('LabelHierarchyIterator'))
205 LabelRenderStrategy = property(lambda self: get_class('LabelRenderStrategy'))
--> 206 Light = property(lambda self: get_class('Light'))
207 LightKit = property(lambda self: get_class('LightKit'))
208 LineIntegralConvolution2D = property(lambda self: get_class('LineIntegralConvolution2D'))
C:\...\Enthought\Canopy32\User\lib\site-packages\tvtk\tvtk_classes.zip\tvtk_classes\tvtk_helper.py in get_class(name)
34 else:
35 fname = camel2enthought(name)
---> 36 mod = get_module(fname)
37 klass = getattr(mod, name)
38 _cache[name] = klass
C:\...\Enthought\Canopy32\User\lib\site-packages\tvtk\tvtk_classes.zip\tvtk_classes\tvtk_helper.py in get_module(fname)
26 # inside the tvtk_classes ZIP file and are local to the
27 # current module: tvtk_helper.py
---> 28 mod = __import__('tvtk.tvtk_classes.%s'%fname, globals(), locals(), [fname])
29 return mod
30
C:\...\Enthought\Canopy32\User\lib\site-packages\tvtk\tvtk_classes.zip\tvtk_classes\light.py in <module>()
C:\...\Enthought\Canopy32\User\lib\site-packages\tvtk\array_handler.py in <module>()
27
28 # Enthought library imports.
---> 29 from tvtk.array_ext import set_id_type_array
30
31 # Useful constants for VTK arrays.
ImportError: cannot import name set_id_type_array
答案 0 :(得分:2)
查看“array_handler.py”文件。第29行
29 from tvtk.array_ext import set_id_type_array
文件夹中没有名为“tvtk”的文件夹正在运行“array_handler.py”,因为我们已经在名为tvtk的文件夹中。 所以代码应该改为:
from array_ext import set_id_type_array
您的计算机中可以找到“array_handler.py”
C:\...\Enthought\Canopy32\User\lib\site-packages\tvtk\array_handler.py
我有同样的问题,这解决了它。