meshgrid函式通常在資料的向量化上使用,但是使用的方法我暫時還不是很明確。
而meshgrid的作用適用於生成網格型資料,可以接受兩個一維陣列生成兩個二維矩陣,對應兩個陣列中所有的(x,y)對
。接下來通過簡單的shell互動來演示一下這個功能的使用,並做一下小結。
互動顯示:
in [65]: xnums =np.arange(4)
in [66]: ynums =np.arange(5)
in [67]: xnums
out[67]: array([0,1, 2, 3])
in [68]: ynums
out[68]: array([0,1, 2, 3, 4])
in [69]: data_list= np.meshgrid(xnums,ynums)
in [70]: data_list
out[70]:
[array([[0, 1, 2,3],
[0, 1, 2, 3],
[0, 1, 2, 3],
[0, 1, 2, 3],
[0, 1, 2, 3]]), array([[0, 0, 0, 0],
[1, 1, 1, 1],
[2, 2, 2, 2],
[3, 3, 3, 3],
[4, 4, 4, 4]])]
in [71]: x,y =data_list
in [72]: x.shape
out[72]: (5l, 4l)
in [73]: y.shape
out[73]: (5l, 4l)
in [74]: x
out[74]:
array([[0, 1, 2,3],
[0, 1, 2, 3],
[0, 1, 2, 3],
[0, 1, 2, 3],
[0, 1, 2, 3]])
in [75]: y
out[75]:
array([[0, 0, 0,0],
[1, 1, 1, 1],
[2, 2, 2, 2],
[3, 3, 3, 3],
[4, 4, 4, 4]])
由上面的互動可以看出,
meshgrid的作用是根據傳入的兩個一維陣列引數生成兩個陣列元素的列表。
如果第乙個引數是xarray,維度是xdimesion,第二個引數是yarray,維度是ydimesion。那麼生成的第乙個二維陣列是以xarray為行,ydimesion行的向量;而第二個二維陣列是以yarray的轉置為列,xdimesion列的向量。
Numpy中Meshgrid函式介紹及2種應用場景
在numpy的官方文章裡,meshgrid函式的英文描述也顯得文縐縐的,理解起來有些難度。可以這麼理解,meshgrid函式用兩個座標軸上的點在平面上畫網格。用法 x,y meshgrid x,y x,y meshgrid x 與 x,y meshgrid x,x 是等同的 x,y,z meshgr...
numpy的生成網格矩陣 meshgrid
numpy模組中的meshgrid函式用來生成網格矩陣,最簡單的網格矩陣為二維矩陣 meshgrid函式可以接受 x1,x2,xn 等 n 個一維向量,生成 n d 矩陣。meshgrid xi,kwargs 引數 xi x1,x2,xn array like 返回值 x1,x2,xn ndarra...
Matlab中的meshgrid函式
參考 matlab函式手冊 meshgrid是matlab中用於生成網路取樣點的函式。常用於3d繪圖。呼叫方式 x,y meshgrid x y 複製網格向量x 和y 生成矩陣網格 x,y 的座標 輸出x,y為維度相同的矩陣。令nx,ny 分別為向量x y 中數的個數,那麼x 被複製ny次以形成x的...