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

Matplotlib에서 3d로 imshow() 이미지 플로팅

<시간/>

imshow()를 플롯하려면 Matplotlib에서 3D로 이미지를 만들려면 다음 단계를 수행할 수 있습니다. -

  • xx 만들기 그리고 yy numpy를 사용하는 데이터 포인트.

  • 데이터(2D) 가져오기 X, Y 사용 및 Z .

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

  • 'ax1' 추가 하위 플롯 배열의 일부로 그림에.

  • 데이터를 이미지로 표시합니다. 즉, 데이터가 있는 2D 일반 래스터에 표시합니다.

  • 'ax2' 추가 하위 플롯 배열의 일부로 그림에.

  • 등고선 또는 채워진 영역 세트를 만들고 저장합니다.

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

예시

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()

출력

Matplotlib에서 3d로 imshow() 이미지 플로팅