numpy中的meshgrid

经常遇到meshgrid,一段时间不用就忘记了,记录之

meshgrid用于生成网格点的坐标矩阵(参考https://blog.csdn.net/lllxxq141592654/article/details/81532855)

 

例如:

x = np.array([0, 1])

y = np.array([0, 1, 2])
grid = np.meshgrid(x,y)

grid =

[array([[0, 1],
       [0, 1],
       [0, 1]]), array([[0, 0],
       [1, 1],
       [2, 2]])]

这表示生成了6个坐标点,array([[0, 1], [0, 1],[0, 1]])为6个坐标点的x坐标, array([[0, 0],[1, 1], [2, 2]])]表示y坐标,

6个坐标点为(0,0),(1,0),(0,1),(1,1),(0,2),(1,2)。

可以使用stack来得到6个点坐标。

 

meshgrid还可以携带第三个参数(默认indexing='xy')

grid = np.meshgrid(x,y,indexing='ij')

grid =
[array([[0, 0, 0],
       [1, 1, 1]]), array([[0, 1, 2],
       [0, 1, 2]])]
含义相同,只是坐标点的顺序不同,(0,0),(0,1),(0,2),(1,0),(1,1),(1,2)

一个按行,一个按列。

 

posted @ 2019-01-11 16:29  牧马人夏峥  阅读(450)  评论(0编辑  收藏  举报