맞춤형 3D 표면 플롯 생성

Beginner

This tutorial is from open-source community. Access the source code

소개

이 랩에서는 Python Matplotlib 라이브러리를 사용하여 체커보드 패턴의 3D 표면 플롯을 만드는 방법을 배웁니다. 3D 표면 플롯을 생성하고, 표면의 색상을 사용자 정의하며, z 축의 범위를 조정합니다.

VM 팁

VM 시작이 완료되면, 왼쪽 상단 모서리를 클릭하여 Notebook 탭으로 전환하여 실습을 위해 Jupyter Notebook에 접근하십시오.

때로는 Jupyter Notebook 이 로딩을 완료하는 데 몇 초 정도 기다려야 할 수 있습니다. Jupyter Notebook 의 제한으로 인해 작업의 유효성 검사는 자동화될 수 없습니다.

학습 중에 문제가 발생하면 언제든지 Labby 에게 문의하십시오. 세션 후 피드백을 제공해주시면 문제를 신속하게 해결해 드리겠습니다.

필요한 라이브러리 임포트

이 단계에서는 matplotlib.pyplot, numpy, 그리고 matplotlib.ticker에서 LinearLocator를 포함하는 필요한 라이브러리를 임포트합니다.

import matplotlib.pyplot as plt
import numpy as np
from matplotlib.ticker import LinearLocator

표면 플롯을 위한 데이터 생성

이 단계에서는 표면 플롯을 위한 데이터를 생성합니다. X 및 Y 값의 메쉬 그리드 (meshgrid) 를 생성하고, 반경 거리 R 을 계산하며, np.sin()을 사용하여 R 값을 기반으로 Z 값을 계산합니다.

## Create data for the surface plot
X = np.arange(-5, 5, 0.25)
xlen = len(X)
Y = np.arange(-5, 5, 0.25)
ylen = len(Y)
X, Y = np.meshgrid(X, Y)
R = np.sqrt(X**2 + Y**2)
Z = np.sin(R)

표면 플롯을 위한 색상 생성

이 단계에서는 표면 플롯을 위한 색상을 생성합니다. 메쉬 그리드와 동일한 모양의 문자열 빈 배열을 생성하고, 체커보드 패턴으로 두 가지 색상을 채웁니다.

## Create colors for the surface plot
colortuple = ('y', 'b')
colors = np.empty(X.shape, dtype=str)
for y in range(ylen):
    for x in range(xlen):
        colors[y, x] = colortuple[(x + y) % len(colortuple)]

표면 플롯 생성

이 단계에서는 우리가 만든 배열에서 가져온 면 색상으로 표면 플롯을 생성합니다. 또한 z 축을 사용자 정의합니다.

## Create the surface plot
fig = plt.figure()
ax = fig.gca(projection='3d')
surf = ax.plot_surface(X, Y, Z, facecolors=colors, linewidth=0)

## Customize the z axis
ax.set_zlim(-1, 1)
ax.zaxis.set_major_locator(LinearLocator(6))

## Show the plot
plt.show()

요약

이 랩에서는 Python Matplotlib 라이브러리를 사용하여 체커보드 패턴의 3D 표면 플롯을 만드는 방법을 배웠습니다. 표면 플롯을 위한 데이터 생성, 표면 플롯을 위한 색상 생성, 표면 플롯 생성, 그리고 z 축 사용자 정의 방법을 배웠습니다. 이 지식은 다양한 응용 분야를 위한 다양한 유형의 3D 표면 플롯을 만드는 데 적용될 수 있습니다.