Contour plot 는 2차원 평면에서 3차원 데이터의 값을 시각적으로 표현하는 그래픽 도구입니다. 예를 들어 지형 지도에서 등고선은 같은 높이를 가진 지점들을 연결한 선으로, 높이의 변화를 보여줍니다. 이러한 등고선을 통해 지형의 경사와 형태를 한눈에 파악할 수 있죠.

Matplotlib의 Contour 설명

  • contour 함수: 입력된 X, Y, Z 데이터를 바탕으로 같은 Z 값을 가진 지점을 연결하여 선으로 나타냅니다.
  • contourf 함수: contour와 유사하지만, 등고선 사이를 다양한 색으로 채워 더욱 시각적으로 이해하기 쉽게 만듭니다.

사용 분야 및 예시

  • 과학, 공학, 통계, 지리학: 이들 분야에서 다양한 공간 데이터를 시각화하는 데 사용됩니다.
  • 데이터 예시: 기상 데이터(온도, 압력), 지형 데이터(지형의 높낮이), 기타 공간적 데이터의 분포와 패턴.

이 도구들은 복잡한 데이터를 2차원 이미지로 명확하게 표현하며, 전문 분야에서 데이터 분석과 결과 해석을 위해 중요한 역할을 합니다.

Contour plot Code

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(-5, 5, 100)
y = np.linspace(-5, 5, 100)

X, Y = np.meshgrid(x, y)
Z = (X**2 + Y )**2 + (X + Y**2)**2
levels = [10, 20, 30, 40, 50, 100, 150, 200, 250, 300]

contour = plt.contour(X, Y, Z, levels=levels, cmap='coolwarm')

plt.clabel(contour, inline=True, fontsize=8)
plt.colorbar()
plt.title("Contour Plot")

plt.show()

이렇게 보면 그래프를 그리기 쉬워보이는데요. 제가 원하는데로 그리기가 쉽지 않더라고요. 제가 함수나 좌표에 대한 개념이 약해서 그런 것 같습니다.

이 차트를 실제 리포트를 쓸때 사용해 본적은 없는 것 같습니다.

일반적으로는 날씨나 등고선과 같이 연속적으로 변하는 3차원 데이터에 대해서 그림을 그릴때 사용할 수 있다고 하는데요. 구현을 해보려고 했는데 잘 안되네요.

개인적으로 데이터를 분석할때 필요하지는 않은 것 같고, 데이터를 설명할때 배경화면으로는 쓸만 할 것 같습니다.

이 도표 위에 2중으로 마커를 찍어서 표현하거나 X,Y축에 바 차트를 추가해 좀 더 구체적으로 3차원을 표현하니 설명이 훨신 쉬워보입니다. 다만 만드는데 너무 힘드네요….

By Mark

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다