3D科学数据可视化库和应用
项目描述
Mayavi文档:http://docs.enthought.com/mayavi/mayavi/ TVTK文档:http://docs.enthought.com/mayavi/tvtk
愿景
Mayavi旨在提供3D数据的简单、交互式可视化。它是通过以下方式实现的
一个(可选)丰富的用户界面,包含对话框来与可视化中的所有数据和对象进行交互。
一个简单且干净的Python脚本接口,包括类似于mlab的单行脚本或面向对象编程接口。
利用VTK工具包的力量,而不强迫你学习它。
此外,Mayavi力求成为一个可重用的工具,可以以不同的方式嵌入到您的应用程序中,或与envisage应用程序构建框架结合使用,以构建特定领域的工具。
Mayavi是Enthought工具套件(ETS)的一部分。
特性
Mayavi是一个通用的、跨平台的2D和3D科学数据可视化工具。其特性包括
在2D和3D中可视化标量、矢量和张量数据
使用Python轻松脚本化
通过自定义源、模块和数据过滤器轻松扩展
读取多种文件格式:VTK(传统和XML)、PLOT3D等。
保存可视化
以多种图像格式保存渲染的可视化
通过mlab快速科学绘图的方便功能(请参阅mlab文档)
有关更多信息,请参阅Mayavi用户指南。
与它的前辈MayaVi1不同,Mayavi从一开始就考虑了脚本化和可扩展性。虽然mayavi2应用程序本身就可以使用,但它也可以作为一个Envisage插件使用,允许它以原生方式嵌入到用户应用程序中。或者,它可以作为任何应用程序的可视化引擎。
快速入门
如果您是Mayavi的新用户,建议您阅读在线用户手册,它应该会介绍如何安装和使用它。
如果您已按照下一节所述安装了Mayavi,您应该能够启动mayavi2应用程序,并运行示例目录中的任何示例。
安装
Mayavi本身不是很难安装的包,但它的依赖项却相当重。然而,许多这些依赖项现在作为PyPI上的wheels可用。两个关键依赖项是
最新的VTK wheels在所有主要平台(Windows、MacOS和Linux)上都有,但仅适用于64位机器。所有这些操作系统都完全支持Python 3.x,MacOS和Linux上支持Python 2.7.x。如果您运气不好,您的平台不受支持,那么您需要使用您的特定发行版自己安装VTK,如通用构建和安装说明中所述。
在Python 3.x版本中,您需要安装PyQt5,并且有相应的wheel文件可用。在2.7.x版本中,您有更多选择,可以使用PySide、PyQt4和wxPython。这些可以通过pip或您的包管理器进行安装。
目前,Mayavi自身应与新的wxPython 4.x兼容。但是,traitsui、pyface和其他ETS包尚不支持它,因此UI可能无法正常工作。旧版本应该可以正常使用。PyQt/PySide/PySide2应该可以无需额外配置即可正常工作。
最新稳定版本
截至最新版本,即4.6.0及以上版本,如果您使用Python 3.x且在64位机器上,通过pip安装是最简单的方法,步骤如下:
$ pip install mayavi $ pip install PyQt5
这就完成了!
如果您无法完成此操作,请阅读上面的文档,并找到一种安装VTK和合适的UI工具包的方法,然后重复上述步骤。
如果您还对jupyter笔记本的支持感兴趣,请执行以下操作(当然,在确保已安装jupyter之后。注意,Jupyter笔记本功能仅从Mayavi版本4.5.0开始支持)
$ jupyter nbextension install --py mayavi --user $ jupyter nbextension enable --py mayavi --user
您还需要安装ipywidgets和ipyevents。这些可以通过pip或您喜欢的包管理器进行安装。
前沿版本
如果您想从github安装Mayavi的最新版本,可以简单地执行以下操作:
$ git clone https://github.com/enthought/mayavi.git $ cd mayavi $ pip install -r requirements.txt $ pip install PyQt5 # replace this with any supported toolkit $ python setup.py install # or develop
使用上面章节中的说明添加jupyter nbextensions,您应该就可以使用了。
文档
更多文档可在在线用户手册或源代码的docs目录中找到。这包括mayavi2应用程序的man页、HTML和PDF格式的用户指南以及mlab的文档。
更多形式的文档,如研讨会/教程材料,也在这里提供
教程视频
以下是一些您可以观看以学习Mayavi的教程视频
SciPy 2018 Mayavi教程(3小时)
示例
所有示例都在源代码或git克隆的examples目录中。文档和示例不包括在二进制eggs中。示例目录还包含一些样本数据。
测试套件
可以使用nose运行tvtk和mayavi的基本测试套件
nosetests -v tvtk/tests nosetests -v mayavi
集成测试
cd integrationtests/mayavi python run.py
错误追踪器,邮件列表等。
错误追踪器可在github上找到。请提供有关平台、Python、vtk和GUI后端及其版本的信息和详细情况。如果可能,请提供一个可以复制问题的简短示例。
如果您有疑问,可以在Mayavi-users邮件列表上提问。这个列表由一些人使用,不是很活跃。另一个可能有用的邮件列表是ETS Users邮件列表。这是一个更通用的列表,有很多经验丰富的Enthought Tool Suite用户。
项目详情
mayavi-4.8.2.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | b10fe9145f21c48e4902f0e746b3603b3cb694d11456515a46820f21a0a74229 |
|
MD5 | 7a792b840a63efa0fc30e9eaa4fe5bcb |
|
BLAKE2b-256 | ee49f6038f0539e11e52d389f161e5ad78212d5680d9a9725b18d108562db124 |