2017-02-21 7 views
2

を描画しません:Mayaviは、私は4つのノードと3つのエッジと非常に簡単なグラフを描きたいライン

from numpy import array, vstack 
    from mayavi import mlab 

    mlab.figure(1, bgcolor=(1, 0.9, 1)) 
    mlab.clf() 
    x = array([0, 3, 2, 3]) 
    y = array([0, 4, 5, 1]) 
    z = array([0, 0, 1, 1]) 
    color = array([0.1, 0.3, 0.5, 0.7]) 

    pts = mlab.points3d(x, y, z, 
         color, 
         scale_factor=1, 
         scale_mode='none', 
         colormap='Blues', 
         resolution=20) 

    edges = vstack([[0, 1], [0, 2], [0, 3]]) 
    pts.mlab_source.dataset.lines = edges 
    tube = mlab.pipeline.tube(pts, tube_radius=0.1, tube_sides=7) 
    mlab.pipeline.surface(tube, color=(0.8, 0.8, 0.8)) 
    mlab.show() 

それが返されます。縁が欠けているのはなぜ mayavi graph fail

を?

答えて

2

これについてMayaviにバグがあります。これは、VTKによる非同期の変更に関連しているため、特定するのが少し難しいです。 https://github.com/enthought/mayavi/issues/388

MayaviのGitHubの上の議論はバグもMayaviを思い付く、それがラインを設定した後

pts.mlab_source.update() 

を追加することによって、そこに固定されているprotein.py例で現れあります。例のオンラインで固定https://github.com/enthought/mayavi/commit/afb17fceafe787c8260ca7a37fbb3b8c2fbfd36c

私のために修正プログラムを使用していませんでしたが、試してみることがあります。

+0

私のケースでは、チューブが強制的に表示されました。 – nanenaro

関連する問題