mayavi -> python 3D可视化工具Mayavi的安装

前言

Mayavi是一个基于VTK(Visualization Toolkit)的科学计算和可视化工具,主要用于数据可视化和科学计算领域。

它提供了一系列的高级可视化工具,包括2D和3D图形、表面和体积渲染、流场可视化等。Mayavi可以通过Python脚本进行调用,也可以通过GUI界面进行操作。

Open3D是一个开源的跨平台3D数据处理库,提供了一系列的函数用于点云和三角网格的处理、可视化和深度学习。

它支持多种数据格式,包括PLY、OBJ、OFF等,并提供了一系列的滤波、配准、分割、重建等算法,可以用于3D扫描、机器人视觉、自动驾驶等领域。

OpenGL是一个跨平台的图形库,可以用于创建2D和3D图形、交互式应用程序等。

它提供了一系列的函数和工具,用于创建图形、处理图像、渲染纹理等。OpenGL通常使用C++编写,但也可以使用其他编程语言进行编写。OpenGL可以用于游戏开发、虚拟现实、科学可视化等领域。

mayavi依赖的包有:PyQt,traits,VTK。尽管Mayavi能支持python 3.10,但是我在3.8以上的环境中VTK遇到了一些奇奇怪怪不能解决的问题,因此我推荐在3.7以下的环境下安装。

本文用的是python3.7

我的网盘>软件>python>python版本>python-3.7.0

python安装参考:

python下载安装教程_python-程序员的博客-CSDN博客

1.在pycharm(社区版和收费版都可以)项目中下载以下插件

python 复制代码
pip install PyQt5==5.15.2 vtk==8.1.2 traits==6.3.2
pip install traitsui==7.2.1 pyface==7.3.0 numpy
pip install mayavi==4.7.1
------->>增加下载速度(这里使用的是阿里云其他的看下面遇到问题2)
pip install PyQt5==5.15.2 vtk==8.1.2 traits==6.3.2 -i https://mirrors.aliyun.com/pypi/simple/
pip install traitsui==7.2.1 pyface==7.3.0 numpy  -i https://mirrors.aliyun.com/pypi/simple/
pip install mayavi==4.7.1 -i https://mirrors.aliyun.com/pypi/simple/
------->>最后更新traitsui到最新版参看问题1
pip install traitsui --指定最新版本(参看问题三)

参考:基于pypi的mayavi安装过程_哔哩哔哩_bilibili

测试是否安装成功:

python 复制代码
import numpy as np
from mayavi import mlab
x, y = np.ogrid[-2:2:20j, -2:2:20j]
z = x * np.exp( - x**2 - y**2)
pl = mlab.surf(x, y, z, warp_scale="auto")
mlab.axes(xlabel='x', ylabel='y', zlabel='z')
mlab.outline(pl)
mlab.show()

问题1:

解决方法:

更新traitsui到最新版:

问题2:下载插件时文件较大导致超时问题

参考:

python安装模块速度太慢了,教你一招提升百倍安装速度_python如何加速安装模块-CSDN博客

问题3:安装过程中出现"python中,Microsoft Visual C++ 14.0 or greater is required问题解决方案"

参考:

-----------------------------------------2024//25----------------------------------------------------

1.最近在网上看到有人使用Anaconda来配置Python环境,但配置好的VTK总是缺少模块,而且还会出现其他问题。相比之下,未必有以上方法效果好,其缺点主要是安装速度较慢。

2.另外一种方法是,您可以从Christoph Gohlke的网站提前下载所需的Python扩展包。在下载时,请选择以下文件:

Archived: Python Extension Packages for Windows - Christoph Gohlke (uci.edu)

traits-6.3.2-cp37-cp37m-win_amd64.whl

VTK-9.1.0-cp37-cp37m-win_amd64.whl

PyQt4-4.11.4-cp37-cp37m-win_amd64.whl(不推荐,推荐下面安装pyqt5)

mayavi-4.7.4-cp37-cp37m-win_amd64.whl

以上文件下载较慢已放百度云.

正式安装

1.离线安装

traits-6.3.2-cp37-cp37m-win_amd64.whl

VTK-9.1.0-cp37-cp37m-win_amd64.whl

2.在线安装,如果上面网站有,也可以先下载下来

pip install PyQt5==5.15.2

pip install traitsui==7.2.1 pyface==7.3.0 numpy

3.离线安装

mayavi-4.7.4-cp37-cp37m-win_amd64.whl

注:

在离线安装模式下,您可以使用以下命令来安装matplotlib:

复制代码
bash`(.venv) PS D:\PycharmProjects\pythonProject12> pip install --no-index --find-links=d:\matplotlib-3.5.1-cp37-cp37m-win_amd64.whl matplotlib==3.5.1`

请确保将路径d:\matplotlib-3.5.1-cp37-cp37m-win_amd64.whl替换为您实际的文件路径。这条命令将使用指定的wheel文件来安装matplotlib的3.5.1版本。

2024-5-31(更新)

要使用 conda 安装 Mayavi,请尝试以下操作:

$ conda create -n mayavi

$ conda activate mayavi # or source activate mayavi

$ conda install -c conda-forge numpy scipy traits jupyter ipywidgets ipyevents

$ conda remove pyqt qt

$ pip install mayavi pyqt5 jupyter

参考地址:

上面详细说明地址

mayavi-tutorial/installation.md at master · prabhuramachandran/mayavi-tutorial · GitHub

Anaconda(conda)-->Anaconda Prompt (安装指令)

Anaconda -> Anaconda Prompt 指令_anoconda promort 指令-CSDN博客

相关推荐
火车叼位20 分钟前
脚本伪装:让 Python 与 Node.js 像原生 Shell 命令一样运行
运维·javascript·python
孤狼warrior31 分钟前
YOLO目标检测 一千字解析yolo最初的摸样 模型下载,数据集构建及模型训练代码
人工智能·python·深度学习·算法·yolo·目标检测·目标跟踪
Katecat9966341 分钟前
YOLO11分割算法实现甲状腺超声病灶自动检测与定位_DWR方法应用
python
玩大数据的龙威1 小时前
农经权二轮延包—各种地块示意图
python·arcgis
ZH15455891311 小时前
Flutter for OpenHarmony Python学习助手实战:数据库操作与管理的实现
python·学习·flutter
belldeep1 小时前
python:用 Flask 3 , mistune 2 和 mermaid.min.js 10.9 来实现 Markdown 中 mermaid 图表的渲染
javascript·python·flask
喵手1 小时前
Python爬虫实战:电商价格监控系统 - 从定时任务到历史趋势分析的完整实战(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·电商价格监控系统·从定时任务到历史趋势分析·采集结果sqlite存储
喵手2 小时前
Python爬虫实战:京东/淘宝搜索多页爬虫实战 - 从反爬对抗到数据入库的完整工程化方案(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·京东淘宝页面数据采集·反爬对抗到数据入库·采集结果csv导出
B站_计算机毕业设计之家2 小时前
猫眼电影数据可视化与智能分析平台 | Python Flask框架 Echarts 推荐算法 爬虫 大数据 毕业设计源码
python·机器学习·信息可视化·flask·毕业设计·echarts·推荐算法
PPPPPaPeR.2 小时前
光学算法实战:深度解析镜片厚度对前后表面折射/反射的影响(纯Python实现)
开发语言·python·数码相机·算法