Để vẽ một imshow () hình ảnh 3D trong Matplotlib, chúng ta có thể thực hiện các bước sau -
-
Tạo xx và yy điểm dữ liệu bằng cách sử dụng numpy.
-
Nhận dữ liệu (2D) sử dụng X, Y và Z .
-
Tạo một hình mới hoặc kích hoạt một hình hiện có bằng cách sử dụng figure () phương pháp.
-
Thêm 'ax1' vào hình như một phần của sự sắp xếp lô phụ.
-
Hiển thị dữ liệu dưới dạng hình ảnh, tức là trên một raster thông thường 2D với dữ liệu.
-
Thêm 'ax2' vào hình như một phần của sự sắp xếp lô phụ.
-
Tạo và lưu trữ một tập hợp các đường đồng mức hoặc các vùng đã tô.
-
Để hiển thị hình này, hãy sử dụng show () phương pháp.
Ví dụ
import matplotlib.pyplot as plt import numpy as np from matplotlib import cm plt.rcParams["figure.figsize"] = [7.50, 3.50] plt.rcParams["figure.autolayout"] = True xx, yy = np.meshgrid(np.linspace(0, 1, 10), np.linspace(0, 1, 10)) X = xx Y = yy Z = 10 * np.ones(X.shape) data = np.cos(xx) * np.cos(xx) + np.sin(yy) * np.sin(yy) fig = plt.figure() ax1 = fig.add_subplot(121) ax1.imshow(data, cmap="plasma", interpolation='nearest', origin='lower', extent=[0, 1, 0, 1]) ax2 = fig.add_subplot(122, projection='3d') ax2.contourf(X, Y, data, 100, zdir='z', offset=0.5, cmap="plasma") plt.show()
Đầu ra