matplotlib + 데이터 파싱
1. 수업에서 진행한 내용
이번 수업에서는 CSV 파일을 직접 읽어와 데이터를 가공한 뒤 이를 시각화하는 과정을 실습했다.
이전까지는 리스트 형태의 샘플 데이터를 사용했다면, 이번에는 실제 파일 데이터를 기반으로 데이터 처리 → 시각화까지 전체 흐름을 경험했다.
2. CSV 데이터 읽기
먼저 csv 라이브러리를 사용해 파일을 불러왔다.
import csv
avg_temp = []
min_temp = []
max_temp = []
with open("test.csv", "r", encoding="utf-8", errors="ignore") as file:
reader = csv.reader(file)
header = next(reader) # 첫 줄 (컬럼명) 제거
for row in reader:
print(row) # 한 줄씩 데이터 확인

3. 데이터 구조 이해 (중요)
row는 한 줄의 데이터이며, 리스트 형태 (list)로 들어온다.
예시:
['1930', '108', '11.8', '6.6', '17.4']
- row[0] → 날짜
- row[2] → 평균 기온
- row[3] → 최저 기온
- row[4] → 최고 기온
4. 데이터 가공 (형 변환)
CSV에서 읽은 데이터는 문자열 (string)이기 때문에 그래프를 그리기 위해서는 숫자로 변환해야 한다.
sample.append(row[0])
avg_temp.append(float(row[2]))
min_temp.append(float(row[3]))
max_temp.append(float(row[4]))
여기서 핵심:
- float() → 문자열 → 숫자 변환
- 이걸 안 하면 그래프 안 그려짐 (중요)
5. 꺾은선 그래프 시각화
가공된 데이터를 기반으로 꺾은선 그래프를 생성한다.
import matplotlib.pyplot as plt
plt.plot(sample, avg_temp, color="green", label="avg")
plt.plot(sample, min_temp, color="blue", label="min")
plt.plot(sample, max_temp, color="red", label="max")
plt.legend() # 범례 표시
plt.xticks([]) # x축 글자 제거
plt.show()


6. 그래프 구성 설명
plt.plot()
꺾은선 그래프 생성
- avg → 평균 기온
- min → 최저 기온
- max → 최고 기온
한 그래프에 여러 데이터 표시 가능
plt.legend()
그래프 설명(범례) 출력.
어떤 선이 어떤 데이터인지 구분한다.
plt.xticks([])
x축 글자 제거.
데이터가 많을 때 가독성을 개선한다.
7. 결과 그래프 해석

그래프를 통해 다음을 한눈에 확인할 수 있다.
- 평균 기온 흐름 (녹색)
- 최저 기온 변화 (파란색)
- 최고 기온 변화 (빨간색)
숫자로 볼 때보다 변화 패턴이 훨씬 직관적으로 보인다.
8. 실습에서 중요했던 포인트 (실무 핵심)
1. 데이터 타입 처리
CSV는 전부 문자열로 들어오기 때문에 반드시 형 변환이 필요하다.
실무에서도 가장 많이 터지는 부분이다.
2. 데이터 구조 이해
row[index]로 접근하는 구조 이해가 필수다.
컬럼 위치가 틀리면 데이터가 완전히 꼬인다.
3. 시각화 목적
단순 그래프가 아니라 패턴 / 변화 / 비교를 보기 위한 도구다.
9. 이번 실습에서 배운 점
이번 실습을 통해 데이터를 읽고 → 가공하고 → 시각화하는 전체 흐름을 경험할 수 있었다.
특히 다음 과정이 연결되면서 데이터 분석이 어떤 흐름으로 이루어지는지 이해할 수 있었다.
- CSV 데이터 처리
- 문자열 → 숫자 변환
- 여러 데이터 동시 시각화
10. 전기차 프로젝트와의 연결
이번 실습 구조는 현재 진행 중인 전기차 충전소 분석 프로젝트에도 그대로 적용 가능하다.
예를 들면:
- 지역별 충전소 수 → 리스트화
- 전기차 등록 대수 → 리스트화
- CSV 데이터 병합 → 분석 데이터 생성
- 그래프 시각화 → 인프라 격차 확인
CSV 데이터를 직접 읽고 가공한 뒤, 여러 지표를 꺾은선 그래프로 시각화하며 데이터 분석의 기본 흐름을 이해한 실습이었다.
'수업 복습' 카테고리의 다른 글
| 데이터 시각화 기초 실습 및 프로젝트 적용 (0) | 2026.03.17 |
|---|---|
| 파이썬으로 CSV 파일 불러와 최고 기온 찾기 (0) | 2026.03.13 |
| Python 실습 과제 — 숫자 존재 여부 확인 문제 풀이 (0) | 2026.03.12 |
| Python 실습 과제 정리 (0) | 2026.03.11 |
| Python 기초 복습 (0) | 2026.03.11 |