[python] Matplotlib로 컨투어 플롯 그리기

Matplotlib는 파이썬에서 데이터 시각화를 위한 강력한 라이브러리입니다. 이 라이브러리를 사용하여 다양한 종류의 그래프를 그릴 수 있으며, 컨투어 플롯(contour plot) 또한 그 중 하나입니다. 컨투어 플롯은 2차원 평면상에 등고선(contour lines)을 그려서 데이터의 경계를 시각화하는 방법입니다. 이번 글에서는 Matplotlib를 사용하여 컨투어 플롯을 그리는 방법에 대해 알아보겠습니다.

1. 필요한 패키지 설치

컨투어 플롯을 그리기 위해 Matplotlib 패키지를 설치해야 합니다. 다음 명령어를 사용하여 설치할 수 있습니다.

pip install matplotlib

2. 컨투어 플롯 그리기

컨투어 플롯을 그리기 위해서는 contour 함수를 사용해야 합니다. 이 함수는 X, Y, Z 세 개의 매개변수를 입력받습니다. X와 Y는 2차원 좌표 격자이며, Z는 해당 좌표에서의 값을 나타냅니다.

먼저, 필요한 패키지를 import해야 합니다.

import numpy as np
import matplotlib.pyplot as plt

다음은 x와 y의 값들을 생성하는 코드입니다. 이 예제에서는 numpy의 meshgrid 함수를 사용하여 생성합니다.

# x와 y의 값들을 생성
x = np.linspace(-10, 10, 100)
y = np.linspace(-10, 10, 100)
X, Y = np.meshgrid(x, y)

이제 z값을 정의하는 함수 f(x, y)를 작성해보겠습니다. 이 예제에서는 간단한 2차원 가우시안 함수를 사용합니다.

# z값을 정의하는 함수
def f(x, y):
    return np.exp(-x**2/10 - y**2/10)

이제 생성한 x, y 값에 대응하는 z 값을 계산합니다.

# z 값 계산
Z = f(X, Y)

마지막으로 contour 함수를 사용하여 컨투어 플롯을 그립니다.

# 컨투어 플롯 그리기
plt.contour(X, Y, Z)
plt.show()

3. 결과 확인하기

위 코드를 실행하면 컨투어 플롯이 생성되고, 생성된 플롯이 화면에 출력됩니다.

컨투어 플롯을 만들 때에는 X, Y, Z값을 조정함으로써 원하는 결과를 얻을 수 있습니다. 또한, contour 함수의 매개변수를 통해 등고선의 색상, 선 스타일 등을 조절할 수도 있습니다.

Matplotlib를 사용하여 컨투어 플롯을 그리는 방법을 알아보았습니다. 이러한 시각화 기법을 통해 데이터의 경계를 시각적으로 파악할 수 있으며, 데이터 분석 및 모델링에 유용하게 활용할 수 있습니다.

참고 자료: