2013-06-12 3 views
1

enthought mayavi 모듈에서 mlab을 가져 오려고합니다. 나는 enthought 캐노피 배포판을 사용하고 있습니다.enthought mayavi에서 mlab 가져 오기

다음 일련의 오류가 발생합니다. 검색 할 때 비슷한 오류가없는 것 같습니다.

누구나 다음 단계에 대한 아이디어가 있습니까?

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 

답변

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 

에서 컴퓨터에서 발견되는이 그것을 해결했다.

+2

'mayavi' 또는'tvtk'의 코드를 변경하여 실행시키지 않아야합니다. 이 문제를 "정확히"재현 할 수 없었지만 다른 예외가있는 동일한 줄에 예외가 있습니다. C : \ Users \ XXX \ AppData \ Local \ Enthought \ Canopy \ User \ lib \ site-packages \ tvtk \ array_handler.py () 28 # Enthought 라이브러리 가져 오기. ---> 29 from tvtk.array_ext import set_id_type_array 31 # VTK 배열에 유용한 상수. ImportError : numpy.core.multiarray 가져 오기에 실패했습니다. ** ** 'numpy'를 '1.7.1' **로 업데이트하면 ** 문제가 해결됩니다. – punchagan

+0

numpy를 1.7.1로 업데이트해도 문제가 해결되지 않았지만 1.8.1로 업데이트하면이 문제가 해결되었습니다. – rottweiler

관련 문제