参考链接:
『python笔记』numpy中mgrid的用法_布衣小张-CSDN博客_mgrid
numpy中的mgrid函数_KangLongWang的博客-CSDN博客_mgrid函数
mgrid函数返回多维结构
np.mgrid[第1维,第2维,第3维,…]
每一维的表示为np.mgrid[起点:终点:步长]
当步长为实数时,表示按间隔来分,.1表示从起点按0.1递增(左闭右开递增)
当步长为复数时,表示按点数来分,5j表示把从起点到终点等分成5个点(左闭右闭等分)
>>> np.mgrid[1:7:2]
array([1, 3, 5])
>>> np.mgrid[1:7:2,2:8:2]
array([[[1, 1, 1],
[3, 3, 3],
[5, 5, 5]],
[[2, 4, 6],
[2, 4, 6],
[2, 4, 6]]])
>>> np.mgrid[-5:5:3j,-2:2:3j]
array([[[-5., -5., -5.],
[ 0., 0., 0.],
[ 5., 5., 5.]],
[[-2., 0., 2.],
[-2., 0., 2.],
[-2., 0., 2.]]])
# 可以看出,二维结构,左边是按列展开,右边按行展开。
>>> np.mgrid[1:3:3j,4:5:2j]
array([[[1., 1.],
[2., 2.],
[3., 3.]],
[[4., 5.],
[4., 5.],
[4., 5.]]])
>>> np.mgrid[-5:5:3j,-2:2:3j,-1:1:2]
array([[[[-5.],
[-5.],
[-5.]],
[[ 0.],
[ 0.],
[ 0.]],
[[ 5.],
[ 5.],
[ 5.]]],
[[[-2.],
[ 0.],
[ 2.]],
[[-2.],
[ 0.],
[ 2.]],
[[-2.],
[ 0.],
[ 2.]]],
[[[-1.],
[-1.],
[-1.]],
[[-1.],
[-1.],
[-1.]],
[[-1.],
[-1.],
[-1.]]]])