我是新来的numpy,我正试图找到Pythonic :)方法来生成一个规则的3D网格点。numpy非整数网格
随着numpy, ndindex函数几乎做我想要的,但我认为它只能与整数一起使用。
import numpy as np
ind=np.ndindex(2,2,1)
for i in ind:
print(i)
>>>(0, 0, 0)
(0, 1, 0)
(1, 0, 0)
(1, 1, 0)
我基本上想同样的事情,但使用浮动来定义值。
我定义了框的尺寸和x,z和z细分的数量。
让我们从创建x,y和z维线性空间开始。
import numpy as np
corner1 = [0.0, 0.0, 0.0]
corner2 = [1.0, 1.0, 1.0]
nx, ny, nz = 5, 3, 7
xspace = np.linspace(corner1[0], corner2[0], nx)
yspace = np.linspace(corner1[1], corner2[1], ny)
zspace = np.linspace(corner1[2], corner2[2], nz)
现在,我应该如何组合这些给我一个在我的网格中的所有点的数组? 谢谢你的时间!
可能的复制(http://stackoverflow.com/questions/1827489/numpy-meshgrid-in-3d) – mgilson
@mgilson,我认为feedMe可能提出稍微不同的问题; 'ndindex'返回一个生成器,而不是一个数组。但是这个问题并没有100%清楚。 – senderle
对不起,如果你发现我的问题不清楚。接下来我需要阅读发电机。 – feedMe