Trong đồ họa 3D, voxel đại diện cho giá trị trên lưới đều trong không gian 3 chiều. Voxel là đối ứng 3D của pixel 2D. Pixel là ô vuông trong ảnh 2D có vị trí trên lưới 2D và một giá trị màu, voxel là khối lập phương trong mô hình 3D có vị trí trong lưới 3D và một giá trị màu.
Để biểu diễn voxel với matplotlib, thực hiện các bước sau:
Các bước
- Thiết lập kích thước hình và padding.
- Tạo dữ liệu ngẫu nhiên chọn 0 hoặc 1.
- Tạo figure mới.
- Lấy axes hiện tại với projection='3d'.
- Vẽ tập voxel đã tô bằng phương thức voxels().
- Hiển thị hình bằng show().
Ví dụ
import numpy as np import matplotlib.pyplot as plt plt.rcParams["figure.figsize"] = [7.50, 3.50] plt.rcParams["figure.autolayout"] = True data = np.random.choice([0, 1], size=(5, 7, 9), p=[0.65, 0.35]) fig = plt.figure() ax = fig.gca(projection='3d') ax.voxels(data, edgecolor="k", facecolors='green') plt.show()
Kết quả
Hình 3D hiển thị các khối lập phương (voxel) màu xanh lá, viền đen, phân bố ngẫu nhiên trong không gian 5x7x9.