Computer >> Máy Tính >  >> Lập trình >> Python

Python - numpy.meshgrid

numpy.meshgrid () được sử dụng để trả về ma trận tọa độ từ các vectơ tọa độ. Cú pháp của nó như sau -

numpy.meshgrid(*xi, **kwargs)

Tham số

Meshgrid có thể chấp nhận các tham số sau -

  • x1, x2,…, xn - Nó đại diện cho các tọa độ của lưới.

  • lập chỉ mục - Đây là một tham số tùy chọn xác định hệ số Descartes 'xy' theo mặc định và chỉ số đầu ra 'ij' của ma trận.

  • thưa thớt - Nó là một tham số tùy chọn. Nếu chúng ta muốn sử dụng lưới thưa thớt để tiết kiệm bộ nhớ, thì chúng ta phải đặt tham số này thành True. Theo mặc định, nó là False.

  • sao chép - Nó trả về một bản sao của mảng ban đầu để chuyển đổi bộ nhớ khi tham số là True. Theo mặc định, nó là False.

Ví dụ 1

Chúng ta hãy xem xét ví dụ sau -

# Import numpy
import numpy as np

# input array
x = np.array([1,2,3,4,5])
y = np.array([11, 12, 13, 14, 15])
print("Input x :\n", x)
print("Input y :\n", y)

# meshgrid() function
xx, yy = np.meshgrid(x, y, sparse=True)
print("Meshgrid of X:", xx)
print("Meshgrid of Y:\n", yy)

Đầu ra

Nó sẽ tạo ra kết quả sau -

Input x :
 [1 2 3 4 5]
Input y :
 [11 12 13 14 15]
Meshgrid of X: [[1 2 3 4 5]]
Meshgrid of Y:
 [[11]
 [12]
 [13]
 [14]
 [15]]

Ví dụ 2

Hãy để chúng tôi lấy một ví dụ khác. Nó làm nổi bật sự khác biệt giữa linspace meshgrid .

# Import numpy
import numpy as np

# linspace function
a = np.linspace(3, 4, 4)
b = np.linspace(4, 5, 6)
print("linspace of a :", a)
print("linspace of b :", b)

# meshgrid function
xa, xb = np.meshgrid(a, b)
print("Meshgrid of xa :\n", xa)
print("Meshgrid of xb :\n", xb)

Đầu ra

Chương trình trên sẽ tạo ra kết quả sau -

linspace of a : [3.          3.33333333 3.66666667 4.       ]
linspace of b : [4. 4.2 4.4 4.6 4.8 5. ]
Meshgrid of xa :
 [[3.          3.33333333 3.66666667 4.       ]
 [3.         3.33333333 3.66666667 4.       ]
 [3.          3.33333333 3.66666667 4.       ]
 [3.          3.33333333 3.66666667 4.       ]
 [3.          3.33333333 3.66666667 4.       ]
 [3.          3.33333333 3.66666667 4.       ]]
Meshgrid of xb :
 [[4. 4. 4. 4. ]
 [4.2 4.2 4.2 4.2]
 [4.4 4.4 4.4 4.4]
 [4.6 4.6 4.6 4.6]
 [4.8 4.8 4.8 4.8]
 [5. 5. 5. 5. ]]