【问题标题】:How do I add a scale bar to a plot in Mayavi2/VTK?如何在 Mayavi2/VTK 的绘图中添加比例尺?
【发布时间】:2011-07-14 15:50:02
【问题描述】:

我想在我用 mlab 创建的 mayavi 图中添加一个比例尺(例如显示微米的大小)。

例如引用这个问题:How to display a volume with non-cubic voxels correctly in mayavi

我可以使用设置图的体素大小

from enthought.mayavi import mlab
import numpy as np

s=64
x,y,z = np.ogrid[0:s,0:s,0:s/2]

volume = np.sqrt((x-s/2)**2 + (y-s/2)**2 + (2*z-s/2)**2)

grid = mlab.pipeline.scalar_field(data)
grid.spacing = [1.0, 1.0, 2.0]

contours = mlab.pipeline.contour_surface(grid, 
                     contours=[5,15,25], transparent=True)
mlab.show()

我想要一种自动化的方式来添加一些指标,表明我正在展示的对象的比例是多少。现在,我正在使用inkscape 为导出的图像手动添加比例尺,但必须有更好的方法。

一个简单的 mayavi 方法会很有帮助,但如果 vtk 中有任何东西可以做到这一点,我总是可以使用 mayavi 的包装器。

像 text3d 这样的东西可以让我添加文本,然后我想我也可以弄清楚如何画一条线并手动计算正确的缩放比例,但我希望有一种更简单的方法。

【问题讨论】:

    标签: python scipy vtk mayavi


    【解决方案1】:

    尝试以下方法:

    mlab.axes()
    
    mlab.outline()
    mlab.colorbar()
    

    这个参考:http://github.enthought.com/mayavi/mayavi/auto/mlab_reference.html 和几个例子一样会有所帮助。

    【讨论】:

    • 谢谢,但我认为这给出了一个颜色条来说明标量场 f(x,y,z) 的含义,我希望能找到一些东西来说明 x,y,z 坐标的含义物理单位的术语。
    猜你喜欢
    • 1970-01-01
    • 2013-06-13
    • 2017-08-13
    • 2015-10-21
    • 1970-01-01
    • 1970-01-01
    • 2022-11-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多