3

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

例如,参考这个问题:How to display a volume with non-cubic voxels correct 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 这样的东西可以让我添加文本,然后我想我也可以弄清楚如何画一条线并手动计算正确的缩放比例,但我希望有一种更简单的方法。

4

1 回答 1

0

尝试以下操作:

mlab.axes()

mlab.outline()
mlab.colorbar()

此参考资料: http: //github.enthought.com/mayavi/mayavi/auto/mlab_reference.html会有所帮助,就像几个例子一样。

于 2011-07-14T18:11:47.757 回答