Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

등고선 플롯 투영으로 Matplotlib 3D plot_surface 플롯

<시간/>

등고선 플롯 투영으로 3d plot_surface를 플롯하려면 plot_surface()를 사용할 수 있습니다. 및 윤곽() 방법.

단계

  • Figure 크기를 설정하고 서브플롯 사이와 주변의 패딩을 조정합니다.

  • x, y, X, Y 만들기 및 Z numpy를 사용하는 데이터 포인트.

  • Figure()를 사용하여 새 Figure를 생성하거나 기존 Figure를 활성화합니다. 방법.

  • '~.axes.Axes' 추가 3D 투영을 사용하여 하위 플롯 배열의 일부로 그림에 표시합니다.

  • plot_surface() 사용 표면 플롯을 만드는 방법입니다.

  • contourf()를 사용하여 3D로 채워진 등고선 플롯 만들기 방법.

  • 축을 끕니다.

  • 그림을 표시하려면 show()를 사용하세요. 방법.

예시

import numpy as np
from matplotlib import pyplot as plt

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

x = np.arange(-5, 5, 0.1)
y = np.arange(-5, 5, 0.1)
X, Y = np.meshgrid(x, y)
Z = X * np.exp(-X - Y)

fig = plt.figure()

ax = fig.add_subplot(111, projection='3d')
surf = ax.plot_surface(X, Y, Z, rstride=8, cstride=8, alpha=1, cmap="copper")
ax.contourf(X, Y, Z, zdir='z', offset=np.min(Z), cmap="plasma")
ax.contourf(X, Y, Z, zdir='x', offset=-5, cmap="PiYG_r")
ax.contourf(X, Y, Z, zdir='y', offset=5, cmap="PuBuGn")

ax.axis('off')
plt.show()

출력

등고선 플롯 투영으로 Matplotlib 3D plot_surface 플롯