[머신러닝을 위한 파이썬] Visualization - matplotlib
2024. 12. 26. 02:50ㆍMOOC
1. 기본 선 그래프 (Line Plot)
- plt.plot을 사용해 간단한 선 그래프를 그림.
import matplotlib.pyplot as plt
import numpy as np
X = range(100)
Y = range(100)
plt.plot(X, Y)
plt.show()
2. 다중 선 그래프
- 여러 그래프를 한 플롯에 그림.
X_1 = range(100)
Y_1 = [np.cos(value) for value in X_1]
X_2 = range(100)
Y_2 = [np.sin(value) for value in X_2]
plt.plot(X_1, Y_1, label="Cosine")
plt.plot(X_2, Y_2, label="Sine")
plt.legend()
plt.show()
3. 서브플롯
- 하나의 Figure에 여러 플롯을 배치.
fig = plt.figure(figsize=(10, 10))
ax_1 = fig.add_subplot(1, 2, 1)
ax_2 = fig.add_subplot(1, 2, 2)
ax_1.plot(X_1, Y_1, color="b")
ax_2.plot(X_2, Y_2, color="g")
plt.show()
4. 라인 스타일 및 색상 설정
- color 및 linestyle 옵션으로 라인 스타일 지정.
plt.plot(X_1, Y_1, color="b", linestyle="dashed", label="Dashed Line")
plt.plot(X_2, Y_2, color="r", linestyle="dotted", label="Dotted Line")
plt.legend()
plt.show()
5. 텍스트 및 주석 추가
- 그래프에 텍스트와 주석 추가.
plt.plot(X_1, Y_1, color="b", linestyle="dashed")
plt.plot(X_2, Y_2, color="r", linestyle="dotted")
plt.text(50, 70, "Line_1")
plt.annotate(
'Line_2', xy=(50, 150), xytext=(20, 175),
arrowprops=dict(facecolor='black', shrink=0.05)
)
plt.show()
6. 산점도 (Scatter Plot)
- 점을 이용해 데이터를 시각화.
data_1 = np.random.rand(512, 2)
data_2 = np.random.rand(512, 2)
plt.scatter(data_1[:, 0], data_1[:, 1], color="b", marker="x")
plt.scatter(data_2[:, 0], data_2[:, 1], color="r", marker="o")
plt.show()
7. 막대 그래프 (Bar Chart)
- plt.bar로 데이터의 크기를 시각화.
data = [[5., 25., 50., 20.],
[4., 23., 51., 17],
[6., 22., 52., 19]]
X = np.arange(0, 8, 2)
plt.bar(X + 0.00, data[0], color='b', width=0.50)
plt.bar(X + 0.50, data[1], color='g', width=0.50)
plt.bar(X + 1.00, data[2], color='r', width=0.50)
plt.xticks(X + 0.50, ("A", "B", "C", "D"))
plt.show()
8. 히스토그램 (Histogram)
- 데이터를 구간별로 나누어 분포를 시각화.
X = np.arange(100)
plt.hist(X, bins=5)
plt.show()
9. 박스플롯 (Boxplot)
- 데이터의 분포를 상자 형태로 시각화.
data = np.random.randn(100, 5)
plt.boxplot(data)
plt.show()
10. 저장 및 그리드 추가
- 그래프를 저장하거나 그리드를 추가.
plt.plot(X_1, Y_1, color="b", linestyle="dashed", label="Line 1")
plt.plot(X_2, Y_2, color="r", linestyle="dotted", label="Line 2")
plt.grid(True, lw=0.4, ls="--", c=".90")
plt.legend()
plt.xlim(-100, 200)
plt.ylim(-200, 200)
plt.savefig("test.png")
plt.show()
'MOOC' 카테고리의 다른 글
[머신러닝을 위한 파이썬] Case Study - Air Passengers (0) | 2024.12.26 |
---|---|
[머신러닝을 위한 파이썬] Pandas #2 (0) | 2024.12.26 |
[머신러닝을 위한 파이썬] Pandas (0) | 2024.12.26 |
[머신러닝을 위한 파이썬] Numerical Python (Numpy) Overview and Usage (1) | 2024.12.22 |
[머신러닝을 위한 파이썬] Basic Linear Algebra (0) | 2024.12.22 |