Numpy 的 meshgrid(~)
方法返回一個網格,該網格在繪製 3D 圖形的等值線圖時非常有用。由於很難用語言解釋此方法的作用,請參閱下麵的示例。
參數
1. x1
| array-like
用於製作網格的輸入數組。
2. x2
| array-like
| optional
如果你想要一個二維網格,那麽這是必需的。
* 請注意,如果需要,您可以添加更多數組(即 x3、x4...)。
3. sparse
| boolean
| optional
是否返回稀疏網格。如果您正在處理無法裝入內存的大量數據,請將其設置為True
。默認情況下,sparse=False
。
4. copy
| boolean
| optional
如果 True
,則創建並返回一個新的 Numpy 數組。如果False
,則返回視圖以節省內存。默認情況下,copy=True
。
返回值
如果僅指定x1
,則返回 Numpy 數組。否則,將返回 Numpy 數組的元組。
例子
可視化網格
讓我們創建一個 2D 網格:
x = [1,2,3,4]
y = [5,6,7,8]
xx, yy = np.meshgrid(x, y)
讓我們揭開返回數組的內容:
print(xx)
[[1 2 3 4]
[1 2 3 4]
[1 2 3 4]
[1 2 3 4]]
這是yy
:
print(yy)
[[5 5 5 5]
[6 6 6 6]
[7 7 7 7]
[8 8 8 8]]
使用 Matplotlib,我們可以像這樣繪製它們:
plt.scatter(xx, yy)
plt.show()
這給我們帶來了以下結果:

繪製等高線圖
現在讓我們談談擁有這些data-points的實際好處。當我們繪製 3D 函數的等高線圖時,它們會派上用場。
這是一個例子:
def f(x, y):
return x**2 + y **2
我們可以像這樣繪製輪廓:
x = np.linspace(-5, 5, 100)
y = np.linspace(-5, 5, 100)
xx, yy = np.meshgrid(x, y)
zz = f(xx, yy)
plt.contour(xx, yy, zz)
plt.show()
這給了我們以下等高線圖:

相關用法
- Python Pandas merge_ordered方法用法及代碼示例
- Python NumPy mean方法用法及代碼示例
- Python statistics median_high()用法及代碼示例
- Python statistics median()用法及代碼示例
- Python memoryview.itemsize用法及代碼示例
- Python memoryview.nbytes用法及代碼示例
- Python memoryview.cast用法及代碼示例
- Python memoryview.obj用法及代碼示例
- Python memoryview.hex用法及代碼示例
- Python memoryview()用法及代碼示例
- Python memoryview.toreadonly用法及代碼示例
- Python merge_asof方法用法及代碼示例
- Python NumPy median方法用法及代碼示例
- Python statistics median_low()用法及代碼示例
- Python memoryview用法及代碼示例
- Python memoryview.release用法及代碼示例
- Python memoryview.tolist用法及代碼示例
- Python memoryview.__eq__用法及代碼示例
- Python statistics median_grouped()用法及代碼示例
- Python memoryview.tobytes用法及代碼示例
- Python mxnet.symbol.op.broadcast_logical_xor用法及代碼示例
- Python matplotlib.patheffects.withTickedStroke用法及代碼示例
- Python mxnet.test_utils.get_zip_data用法及代碼示例
- Python mxnet.ndarray.op.uniform用法及代碼示例
- Python mxnet.symbol.op.log_softmax用法及代碼示例
注:本文由純淨天空篩選整理自Isshin Inada大神的英文原創作品 NumPy | meshgrid method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。