Pythonを使用して3次元データの可視化を試みています.
最終的にはmayaviを使用して3次元化したいのですが, その前の段階でつまづいています.
mayaviのサイト(https://mayavi.readthedocs.io/ja/latest/installation.html)を確認したところ, Conda-forge によるインストールという項目があったのでこれに従いインストールを試みました.
$ conda install vtk
$ conda create --name pyforge python=3.6
$ conda config --add channels conda-forge
$ activate pyforge
$ conda install vtk
$ conda install pyqt=5
$ conda install mayavi
(python 3.6にしたのは, 現在主に使用しているのが3系であり, 最新バージョンではない方が良い気がしたためです.
また, pyqt=4でインストールしようとしたところエラーが出たため, 5をインストールしています. )
こちらのinstallは滞りなく成功したのですが, いざ仮想環境(pyforge)からSpyderを開いて
import vtk
をしたころを,
ModuleNotFoundError: No module named 'vtkCommonCorePython'
と表示されました.
mayaviの方も試したところ,
import mayavi
を走らせると, IPython コンソール上に
Changing backend to Qt for Mayavi
と表示されはするのですが, 別ウィンドウで何か上がってくるわけでもありません.
https://mayavi.readthedocs.io/ja/latest/mlab.html
こちらを参考に以下のようなデモのコードを走らせてみたところ,
Python
1# Create the data. 2from numpy import pi, sin, cos, mgrid 3dphi, dtheta = pi/250.0, pi/250.0 4[phi,theta] = mgrid[0:pi+dphi*1.5:dphi,0:2*pi+dtheta*1.5:dtheta] 5m0 = 4; m1 = 3; m2 = 2; m3 = 3; m4 = 6; m5 = 2; m6 = 6; m7 = 4; 6r = sin(m0*phi)**m1 + cos(m2*phi)**m3 + sin(m4*theta)**m5 + cos(m6*theta)**m7 7x = r*sin(phi)*cos(theta) 8y = r*cos(phi) 9z = r*sin(phi)*sin(theta) 10 11# View it. 12from mayavi import mlab 13s = mlab.mesh(x, y, z) 14mlab.show()
ModuleNotFoundError: No module named 'importlib_resources'
というエラーコードが出てきました.
インストールまではうまくいっていると思うのですが, 実際のimportができていない状況です.
何か心当たりがあればご回答よろしくお願いいたします.
プログラミング環境
windows10 64bit
Anaconda3
python 3.8.8(root) 3.6(仮想環境)
spyder 4.2.5(root) 5.0.5(仮想環境)
追記
ご指摘いただいたエラーメッセージを追加いたします.
File "C:\Users\yoosuk\anaconda3\envs\pyforge\lib\site-packages\vtkmodules\vtkCommonCore.py", line 5, in <module>
from .vtkCommonCorePython import *
ImportError: DLL load failed: 指定されたモジュールが見つかりません。
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "<ipython-input-1-7c7f66f02cd3>", line 1, in <module>
import vtk
File "C:\Users\yoosuk\anaconda3\envs\pyforge\lib\site-packages\vtk.py", line 32, in <module>
all_spec.loader.exec_module(all_m)
File "C:\Users\yoosuk\anaconda3\envs\pyforge\lib\site-packages\vtkmodules\all.py", line 7, in <module>
from .vtkCommonCore import *
File "C:\Users\yoosuk\anaconda3\envs\pyforge\lib\site-packages\vtkmodules\vtkCommonCore.py", line 9, in <module>
from vtkCommonCorePython import *
ModuleNotFoundError: No module named 'vtkCommonCorePython'
<from mayavi import mlab> from mayavi import mlab MayaviのバックエンドをQtに変更しています Traceback (most recent call last):File "<ipython-input-2-67847bc6bfd0>", line 1, in <module>
from mayavi import mlab
File "C:\Users\yoosuk\anaconda3\envs\pyforge\lib\site-packages\mayavi\mlab.py", line 16, in <module>
from mayavi.tools.camera import view, roll, yaw, pitch, move
File "C:\Users\yoosuk\anaconda3\envs\pyforge\lib\site-packages\mayavi\tools\camera.py", line 24, in <module>
from .engine_manager import get_engine
File "C:\Users\yoosuk\anaconda3\envs\pyforge\lib\site-packages\mayavi\tools\engine_manager.py", line 12, in <module>
from mayavi.preferences.api import preference_manager
File "C:\Users\yoosuk\anaconda3\envs\pyforge\lib\site-packages\mayavi\preferences\api.py", line 4, in <module>
from .preference_manager import preference_manager
File "C:\Users\yoosuk\anaconda3\envs\pyforge\lib\site-packages\mayavi\preferences\preference_manager.py", line 29, in <module>
from traitsui.api import View, Group, Item
File "C:\Users\yoosuk\anaconda3\envs\pyforge\lib\site-packages\traitsui\api.py", line 261, in <module>
from .editors.api import (
File "C:\Users\yoosuk\anaconda3\envs\pyforge\lib\site-packages\traitsui\editors_init_.py", line 20, in <module>
from .api import (
File "C:\Users\yoosuk\anaconda3\envs\pyforge\lib\site-packages\traitsui\editors\api.py", line 107, in <module>
from .list_str_editor import ListStrEditor
File "C:\Users\yoosuk\anaconda3\envs\pyforge\lib\site-packages\traitsui\editors\list_str_editor.py", line 14, in <module>
from pyface.image_resource import ImageResource
File "C:\Users\yoosuk\anaconda3\envs\pyforge\lib\site-packages\pyface\image_resource.py", line 19, in <module>
ImageResource = toolkit_object("image_resource:ImageResource")
File "C:\Users\yoosuk\anaconda3\envs\pyforge\lib\site-packages\pyface\base_toolkit.py", line 152, in call
module = import_module(mname, package)
File "C:\Users\yoosuk\anaconda3\envs\pyforge\lib\importlib_init_.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "C:\Users\yoosuk\anaconda3\envs\pyforge\lib\site-packages\pyface\ui\qt4\image_resource.py", line 25, in <module>
from pyface.i_image_resource import IImageResource, MImageResource
File "C:\Users\yoosuk\anaconda3\envs\pyforge\lib\site-packages\pyface\i_image_resource.py", line 14, in <module>
from pyface.resource_manager import resource_manager
File "C:\Users\yoosuk\anaconda3\envs\pyforge\lib\site-packages\pyface\resource_manager.py", line 14, in <module>
from pyface.resource.api import ResourceManager
File "C:\Users\yoosuk\anaconda3\envs\pyforge\lib\site-packages\pyface\resource\api.py", line 13, in <module>
from .resource_manager import ResourceManager
File "C:\Users\yoosuk\anaconda3\envs\pyforge\lib\site-packages\pyface\resource\resource_manager.py", line 20, in <module>
from importlib_resources import files
ModuleNotFoundError: No module named 'importlib_resources'
#追記
jbpb0さんのご指摘の通り,
conda install importlib_resources
を実行したところ, import mayaviでこ上記のエラーは出なくなりましたが,
import vtkを実行したときと同様の下記のエラーが出てくるようになりました.
File "C:\Users\yoosuk\anaconda3\envs\pyforge\lib\site-packages\vtkmodules\vtkCommonCore.py", line 5, in <module>
from .vtkCommonCorePython import *
ImportError: DLL load failed: 指定されたモジュールが見つかりません。
こちらの解決方法についてわかる方がいましたらご回答よろしくお願いいたします.
回答2件
あなたの回答
tips
プレビュー