Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Tạo đồ thị 3D trong Matplotlib từ mảng numpy 3D

Tạo mảng 3D ngẫu nhiên, trích xuất tọa độ non-zero để vẽ scatter 3D.

  • fig = plt.figure(), ax = add_subplot(111, projection='3d').
  • data = np.random.random(size=(3,3,3)).
  • z, x, y = data.nonzero() (lưu ý thứ tự).
  • ax.scatter(x, y, z, c=z, alpha=1).
  • show().

Ví dụ

import numpy as np
from matplotlib import pyplot as plt
plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
data = np.random.random(size=(3, 3, 3))
z, x, y = data.nonzero()
ax.scatter(x, y, z, c=z, alpha=1)
plt.show()

Kết quả

Scatter 3D các điểm non-zero trong mảng 3x3x3, màu theo trục z.