【问题标题】:Python - Visualize Dynamic Changes in Graph with MayaviPython - 使用 Mayavi 可视化图形中的动态变化
【发布时间】:2016-05-03 06:57:26
【问题描述】:

我正在尝试使用 Mayavi 可视化 3D 图形。

在程序运行期间,图中的某些节点或边变得不可用,我想动态地可视化它们在可视化场景中变得不可访问。我怎样才能做到这一点?

我还是python的新手,但是好像Mayavi场景一旦显示就无法通过程序改变了。

【问题讨论】:

  • 请发布更多详细信息,分享您的代码。有什么错误吗?

标签: python visualization mayavi


【解决方案1】:

它可以通过多种方式进行更改。您可以添加和删除元素、更改背景和前景色以及为内容设置动画。例如(来自link):

from __future__ import absolute_import, division, print_function
from mayavi import mlab
import numpy as np
import math

alpha = np.linspace(0, 2*math.pi, 100)  

xs = np.cos(alpha)
ys = np.sin(alpha)
zs = np.zeros_like(xs)

mlab.points3d(0,0,0)
plt = mlab.points3d(xs[:1], ys[:1], zs[:1])

@mlab.animate(delay=100)
def anim():
    f = mlab.gcf()
    while True:
        for (x, y, z) in zip(xs, ys, zs):
            print('Updating scene...')
            plt.mlab_source.set(x=x, y=y, z=z)
            yield

anim()
mlab.show()

,将返回一个动画,其中存在两个球体,一个球体的位置每一步都发生变化:

在我看来,Mayavi 文档并不十分出色,但您可以从示例和章节中获得一些信息。例如remove an object from Mayavi pipeline

【讨论】:

    猜你喜欢
    • 2016-03-24
    • 1970-01-01
    • 1970-01-01
    • 2011-09-03
    • 2015-11-16
    • 2021-04-08
    • 2020-10-15
    • 1970-01-01
    • 2016-03-28
    相关资源
    最近更新 更多