我有一个矩形区域,左下角(分钟)和右上角(最大)坐标。我想制作一个由该区域坐标组成的Numpy数组。例如,min和max分别是(3,8)和max(0,6)。我要做的numpy数组是
此外,我要求区域中的网格可能小于1.例如,0.5使X = [[3.0,0] [3.5,0] [4.0,0] [4.5,0]。 ..]
答案 0 :(得分:3)
你可以use numpy.mgrid
:
>>> numpy.mgrid[3:8, 0:6].T
array([[[3, 0],
[4, 0],
[5, 0],
[6, 0],
[7, 0]],
[[3, 1],
[4, 1],
[5, 1],
[6, 1],
[7, 1]],
...
[[3, 5],
[4, 5],
[5, 5],
[6, 5],
[7, 5]]])
如果你想要一个"平坦的"元组数组,你可以重塑它:
>>> numpy.mgrid[3:8, 0:6].T.reshape((-1, 2))
array([[3, 0],
[4, 0],
[5, 0],
[6, 0],
[7, 0],
[3, 1],
...
[6, 5],
[7, 5]])