matplotlib이란?
- Matplotlib는 데이터 분석 결과를 그래프로 표현할 때 널리 사용되는 라이브러리로, 다양한 유형의 그래프와 차트를 생성할 수 있습니다.
- Python과 NumPy와 함께 사용되며, MATLAB과 유사한 2D 및 3D 그래픽 플로팅 기능을 제공합니다.
- 다양한 하드코피 형식과 대화형 환경을 지원하여 고품질의 시각화 결과를 생성할 수 있습니다.
주요 그래프 유형
선 그래프(Line Plot): 데이터의 변화나 경향성을 시간의 흐름에 따라 보여줍니다.
import matplotlib.pyplot as plt
plt.plot([1, 2, 3, 4])
plt.ylabel('some numbers')
plt.show()
막대 차트(Bar Chart): 범주별 값의 크기를 막대의 길이로 나타내어 비교합니다.
plt.bar([1, 2, 3, 4], [1, 4, 9, 16])
plt.show()
히스토그램(Histogram): 데이터의 분포를 나타내는 데 사용됩니다.
data = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
plt.hist(data, bins=10)
plt.show()
파이 차트(Pie Chart): 전체에 대한 각 부분의 비율을 보여줍니다.
# 데이터 준비
labels = 'Frogs', 'Hogs', 'Dogs', 'Logs'
sizes = [15, 30, 45, 10]
explode = (0, 0.1, 0, 0) # 'Hogs'만 조금 돌출되게 설정
# 파이 차트 그리기
plt.pie(sizes, explode=explode, labels=labels, autopct='%1.1f%%', shadow=True, startangle=90)
plt.axis('equal') # 정사각형 형태로 설정하여 원이 왜곡되지 않게 함
plt.show()
산점도(Scatter Plot): 두 변수 간의 관계를 점으로 나타냅니다.
x = [1, 2, 3, 4, 5]
y = [1, 4, 9, 16, 25]
plt.scatter(x, y)
plt.show()
상자 그림(Box Plot): 데이터의 분포와 이상치를 요약하여 보여줍니다.
import matplotlib.pyplot as plt
import numpy as np
# 데이터 준비
np.random.seed(10)
data = np.random.normal(100, 20, 200)
# 상자 그림 그리기
plt.boxplot(data)
plt.title('Box Plot')
plt.ylabel('Values')
plt.show()