2016-05-03 14 views
0

Ich versuche, ein 3D-Diagramm mit Mayavi zu visualisieren.Python - Dynamische Änderungen im Diagramm mit Mayavi visualisieren

Während des Programmablaufs sind einige Knoten oder Kanten im Diagramm nicht verfügbar und ich möchte dynamisch visualisieren, dass sie in der Visualisierungsszene nicht mehr zugänglich sind. Wie kann ich das erreichen?

Ich bin immer noch ein Neuling in Python, aber es scheint, dass die Mayavi-Szene nicht durch das Programm geändert werden kann, sobald es angezeigt wird.

+0

Bitte, posten Sie weitere Details, teilen Sie Ihren Code. Gibt es irgendwelche Fehler? – gofr1

Antwort

0

Es kann auf viele Arten geändert werden. Sie können Elemente hinzufügen und entfernen, Hintergrund- und Vordergrundfarben ändern und Objekte animieren. Zum Beispiel (aus diesem 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() 

, kehren Sie eine Animation, in der zwei Kugel existieren und man hat seine Position bei jedem Schritt der Zeit verändert:

Mayavi animation of sphere location

Die MayaVi Dokumentation isn Es ist aus meiner Sicht genau so brillant, aber Sie können einige Informationen sowohl aus den Beispielen als auch aus den Kapiteln erhalten. Zum Beispiel remove an object from Mayavi pipeline.