安装mayavi遇到的一些问题
mayavi库相较于matplot能够更好的展现3D的视图,最近在学习python的时候要用到mayavi这个库,由于我本人用的是anaconda版本的python,默认python版本是3.8.8版本的,下了mayavi却一直报错,后来去查了查应该是python版本问题,于是搞了个3.7版本的虚拟环境,直接在anaconda下载mayavi仍然一直报错,后来尝试了直接在cmd上pip install等等方法都不可行,搞了一晚上还没搞清楚。
这个过程我也遇到了很多网上相似的问题,但是解决方案回答在互联网上好像很少,我把我的解决流程发上来,供各位参考。
后来干脆手动安装whl的包
安装地址:pythonlibs
下载内容:mayavi,PyQt4,traits,VTK
这里需要注意的是下载的包必须是匹配的。
避免失误的话,这里你可以参考我的下载的包。
mayavi-4.7.3-cp37-cp37m-win_amd64.whl
PyQt4-4.11.4-cp37-cp37m-win_amd64.whl
traits-6.3.1-cp37-cp37m-win_amd64.whl
VTK-9.0.3-cp37-cp37m-win_amd64.whl
安装mayavi并不难,关键是mayavi所依赖的环境复杂,前期我下载的时候是胡乱安装的,导致我运行程序的时候一直报错。
将下载的四个文件的文件夹通过3.7的虚拟环境打开,然后直接输入:
pip install mayavi-4.7.3-cp37-cp37m-win_amd64.whl
pip install PyQt4-4.11.4-cp37-cp37m-win_amd64.whl
pip install traits-6.3.1-cp37-cp37m-win_amd64.whl
pip install VTK-9.0.3-cp37-cp37m-win_amd64.whl
即可。
以上的解决方案在互联网上已经有了,下面是一些我遇到的问题。
报错AttributeError: type object ‘DialogCode’ has no attribute 'Accepted’解决方案
在命令端下载PyQt5以及PyQt5配套的tools库即可。
然后将pyqt5_tools文件的地址添加到path变量里面即可。
VTK版本不匹配解决方案
WARNING: Imported VTK version (9.1) does not match the one used
to build the TVTK classes (9.0). This may cause problems.
Please rebuild TVTK.
解决办法:将现版本的VTK(9.1)uninstall,然后install 9.0版本的VTK
直接在命令端输入
pip uninstall VTK==9.1
待完成以后再输入
pip install VTK==9.0
检测mayavi.mlab是否正常运行
在ipython中输入:
from mayavi import mlab
如果不报错即成功解决问题