gpt4 book ai didi

mayavi - 在同一个 Mayavi 图形中绘制多个曲面的轴?

转载 作者:行者123 更新时间:2023-12-03 19:42:28 38 4
gpt4 key购买 nike

我想在同一个图中绘制多个曲面,并使轴延伸到所有曲面上。

import numpy as np
# Create data with x and y random in the [-2, 2] segment, and z a
# Gaussian function of x and y.
np.random.seed(12345)
x = 4 * (np.random.random(500) - 0.5)
y = 4 * (np.random.random(500) - 0.5)
def f(x, y):
return np.exp(-(x ** 2 + y ** 2))
z = f(x, y)
from mayavi import mlab
myfig = mlab.figure(1, fgcolor=(0, 0, 0), bgcolor=(1, 1, 1))
for i in range(3):
z = z + 1
# Visualize the points
pts = mlab.points3d(x, y, z, z,figure=myfig, scale_mode='none', scale_factor=0.2)
# Create and visualize the mesh
mesh = mlab.pipeline.delaunay2d(pts,figure=myfig)
surf = mlab.pipeline.surface(mesh,figure=myfig)
pts.remove()
mlab.axes(figure=myfig)
mlab.show()

上面的代码是我尝试在所有表面上包含我的轴,但它没有这样做。

enter image description here

上面的图是我的代码的结果,它只在最后一个表面上扩展轴。我想我可以解决这个问题,我强制所有 mlab 函数指定要绘制的图形,但未能在所有表面上扩展轴。

最佳答案

您可以计算对象的范围(这里只有 z 未知,您说 x 和 y 在 (-2, 2) 中),并将其作为 ranges 传递论据 mlab.axes() :
mlab.axes(figure=myfig, ranges=[-2, 2, -2, 2, z.min(), z.max()])

关于mayavi - 在同一个 Mayavi 图形中绘制多个曲面的轴?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41150441/

38 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com