跳转到主要内容

3D科学数据可视化库和应用

项目描述

Mayavi文档:http://docs.enthought.com/mayavi/mayavi/ TVTK文档:http://docs.enthought.com/mayavi/tvtk

Package on PyPI BSD 3 Clause

愿景

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可用。两个关键依赖项是

  1. VTK

  2. 一个GUI工具包,可以是PyQt4PySidePySide2PyQt5wxPython

最新的VTK wheels在所有主要平台(Windows、MacOS和Linux)上都有,但仅适用于64位机器。所有这些操作系统都完全支持Python 3.x,MacOS和Linux上支持Python 2.7.x。如果您运气不好,您的平台不受支持,那么您需要使用您的特定发行版自己安装VTK,如通用构建和安装说明中所述。

在Python 3.x版本中,您需要安装PyQt5,并且有相应的wheel文件可用。在2.7.x版本中,您有更多选择,可以使用PySidePyQt4wxPython。这些可以通过pip或您的包管理器进行安装。

目前,Mayavi自身应与新的wxPython 4.x兼容。但是,traitsuipyface和其他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

您还需要安装ipywidgetsipyevents。这些可以通过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的教程视频

示例

所有示例都在源代码或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用户。

作者和贡献者

  • 核心贡献者

    Prabhu Ramachandran:主要作者。

  • 以前的贡献者

    Gaël Varoquaux:mlab、图标、许多通用改进和维护。

    Deepak Surti:升级到VTK 5.10.1,使用新管道升级到VTK 6.x。

  • 获得Enthought Inc.的支持和代码贡献。

  • 来自许多人的补丁(见发布说明),包括K K Rai和R A Ambareesha为张量支持、参数化源和图像数据。

    非常感谢所有提交错误报告和建议进一步改进的人。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分布

mayavi-4.8.2.tar.gz (7.1 MB 查看哈希值)

上传时间

由以下支持