『Numpy』np.meshgrid
时间: 2023-07-04 17:18:32 浏览: 82
# Python中numpy库中,X,Y = np.meshgrid(x,y)最详细理解(附理解代码)
5星 · 资源好评率100%
`np.meshgrid`是一个用于生成网格坐标点的函数。给定一组一维坐标向量,它可以返回一个二维数组,其中每一行都是在所有输入向量上的一个点。具体来说,对于输入的一组向量`x1, x2, ..., xn`,`np.meshgrid(x1, x2, ..., xn)`返回一个元组`(X1, X2, ..., Xn)`,其中`Xi`是一个二维数组,其行数和列数分别等于x1、x2、...、xn的长度,表示在第i个维度上的坐标值。
举个例子,假设我们有两个一维坐标向量`x`和`y`,分别包含3个值:`x = [1, 2, 3]`,`y = [4, 5, 6]`。那么调用`np.meshgrid(x, y)`将返回一个元组`(X, Y)`,其中`X`和`Y`分别为以下两个二维数组:
```
X = [[1, 2, 3],
[1, 2, 3],
[1, 2, 3]]
Y = [[4, 4, 4],
[5, 5, 5],
[6, 6, 6]]
```
这两个数组表示了在平面直角坐标系上以`(x, y)`为坐标的所有点。可以看出,`X`的每一行都等于输入向量`x`,而`Y`的每一列都等于输入向量`y`。我们可以将这两个数组按行或按列展开,得到所有的网格点坐标。
`np.meshgrid`还支持扩展维度,可以通过设置`indexing='ij'`参数来实现,这时返回的数组中第一维表示y轴,第二维表示x轴。
阅读全文