지난 시간에는 Numpy를 활용해 수만 개의 데이터를 순식간에 계산하는 ‘벡터 연산’의 짜릿함을 맛보았죠? 이제 그 숫자 뭉치들을 우리가 이해할 수 있는 정보로 바꿔줄 차례입니다. 오늘은 공학의 꽃이라 불리는 ‘데이터 시각화’를 시작해 보겠습니다.
### 데이터에 숨겨진 이야기를 듣는 법
여러분, 엑셀 시트에 숫자 수천 개가 나열되어 있다고 상상해 보세요. 그 숫자들 사이의 미세한 오차나 전체적인 흐름을 눈으로 쫓는 것은 거의 불가능에 가깝습니다. 하지만 그래프로 그리면 어떨까요? 데이터가 오르락내리락하는 모습이 순식간에 눈에 들어오죠. 공학에서 시각화는 단순히 ‘예쁘게 꾸미는 것’이 아니라, 데이터 속에 숨겨진 물리적 패턴을 찾아내는 필수적인 과정입니다.
“백 마디 말보다 한 장의 그래프가 공학적 통찰을 더 빨리 전달합니다. 시각화는 시뮬레이션의 꽃입니다.”
공학계에서 이 마법을 부릴 때 가장 많이 사용하는 도구가 바로 Matplotlib입니다. 쉽게 말해, 우리가 계산한 숫자를 건네주면 알아서 척척 그림으로 그려주는 ‘데이터 디자이너’라고 생각하면 됩니다.
– 플롯(Plot): 데이터를 좌표평면 위에 점이나 선으로 그려내는 모든 행위를 뜻합니다. 우리가 그래프를 그리는 코드를 작성하는 것 자체가 ‘플로팅’을 하고 있다고 말할 수 있죠.
### 첫 번째 그래프를 그려볼까요?
시간($t$)에 따라 속도($v$)가 변하는 간단한 물리 현상을 그래프로 표현해 봅시다. 코랩에서 아래 코드를 복사해서 실행해 보세요.
import matplotlib.pyplot as plt
import numpy as np
# 1. 데이터 준비: 0초부터 10초까지 1초 간격의 시간과 속도 데이터 생성
time = np.arange(0, 11)
velocity = time ** 2 # 속도가 시간의 제곱에 비례한다고 가정 (v = t^2)
# 2. 그래프 그리기
plt.plot(time, velocity)
# 3. 필수 요소 추가 (그래프에 이름 붙이기)
plt.xlabel('Time (s)') # x축 라벨
plt.ylabel('Velocity (m/s)') # y축 라벨
plt.title('Velocity vs Time Graph') # 그래프 제목
# 4. 화면에 출력
plt.show()
어때요? 짧은 코드 몇 줄만으로 우리가 의도한 데이터의 흐름이 그래프로 나타나는 것이 참 신기하죠? \( v = t^2 \)이라는 물리 법칙이 곡선으로 그려지는 순간, 우리는 데이터 너머의 ‘변화율’이라는 개념을 시각적으로 직관하게 됩니다.
오늘 우리는 파이썬으로 데이터를 그림으로 바꾸는 첫 단추를 끼웠습니다. 다음 시간에는 단순히 선 하나만 긋는 것을 넘어서, 그래프에 예쁜 색깔을 입히고 두 가지 이상의 물리 법칙을 한 화면에 겹쳐서 비교해 보는 ‘고급 그래프 기법’을 배워볼게요. 데이터를 요리하는 실력이 한층 더 깊어질 겁니다. 다음 시간에 만나요!