np.mgrid使用,
np.mgrid使用,
目录
- 01 功能
- 02 语法
- 03 举例
- 04 用途
01 功能
np.mgrid
用与生成具有“空间结构”的等差三维数组,比如下面代码,生成维度为 (2, 5, 5)
。:
array3D = np.mgrid[-4: 0: 5j,
0: 4: 5j]
print(array3D.shape)
print(array3D)
(2, 5, 5)
[[[-4. -4. -4. -4. -4.]
[-3. -3. -3. -3. -3.]
[-2. -2. -2. -2. -2.]
[-1. -1. -1. -1. -1.]
[ 0. 0. 0. 0. 0.]]
[[ 0. 1. 2. 3. 4.]
[ 0. 1. 2. 3. 4.]
[ 0. 1. 2. 3. 4.]
[ 0. 1. 2. 3. 4.]
[ 0. 1. 2. 3. 4.]]]
02 语法
语法格式如下:
np.mgrid[第1维,第2维,...]
dim = [start: end: step]
维度间用逗号分隔,第 i 维的写法存在两种情况:
a: b: c
c
表示生成的数组元素之间的步长;- 数组区间为
[a, b)
(左闭右开);
a: b: cj
cj
表示生成的数组元素的个数;- 数组区间为
[a, b]
(左闭又闭);
具体的用法,我们在后面实例部分讲解。
03 举例
-
两个数组再堆叠起来
x,y = np.mgrid[-4: 0: 5j,
0: 4: 5j]
print("x: \t", x.shape, "\n", x)
print("y: \t", y.shape, "\n", y)
x: (5, 5)
[[-4. -4. -4. -4. -4.]
[-3. -3. -3. -3. -3.]
[-2. -2. -2. -2. -2.]
[-1. -1. -1. -1. -1.]
[ 0. 0. 0. 0. 0.]]
y: (5, 5)
[[0. 1. 2. 3. 4.]
[0. 1. 2. 3. 4.]
[0. 1. 2. 3. 4.]
[0. 1. 2. 3. 4.]
[0. 1. 2. 3. 4.]]
生成的数组将其进行拆分即两个 5 x 5
的矩阵,其沿令外一个维度的方向进行复制拓展。
04 用途
两个数组再堆叠起来
x,y = np.mgrid[-4: 0: 5j,
0: 4: 5j]
print("x: \t", x.shape, "\n", x)
print("y: \t", y.shape, "\n", y)
x: (5, 5)
[[-4. -4. -4. -4. -4.]
[-3. -3. -3. -3. -3.]
[-2. -2. -2. -2. -2.]
[-1. -1. -1. -1. -1.]
[ 0. 0. 0. 0. 0.]]
y: (5, 5)
[[0. 1. 2. 3. 4.]
[0. 1. 2. 3. 4.]
[0. 1. 2. 3. 4.]
[0. 1. 2. 3. 4.]
[0. 1. 2. 3. 4.]]
生成的数组将其进行拆分即两个 5 x 5
的矩阵,其沿令外一个维度的方向进行复制拓展。
对于更高维的数组,我们结合它常见的应用三维绘图,具体的参考:<python笔记:np.mgrid
的用法>。
相关内容
- 暂无相关文章
评论关闭