파이썬으로 데이터 시각화하기: 고급 플롯 기법
소개
데이터 시각화는 데이터의 복잡한 패턴이나 추세를 파악하는 데 매우 유용한 도구입니다. 파이썬은 데이터 시각화에 최적화된 다양한 라이브러리를 제공하고 있으며, 이 블로그 포스팅에서는 파이썬을 사용하여 고급 플롯 기법을 살펴보겠습니다.
Matplotlib
Matplotlib는 파이썬에서 가장 널리 사용되는 데이터 시각화 라이브러리입니다. 기본적인 그래프부터 고급 플롯까지 다양한 기능을 제공하며, 다른 라이브러리와의 호환성도 매우 우수합니다.
선 그래프
Matplotlib의 가장 기본적인 플롯은 선 그래프입니다. 선 그래프는 시간, 변화, 추세 등을 보여주는 데에 유용하며, 간단하게 그릴 수 있습니다.
```python import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5] y = [2, 4, 6, 8, 10]
plt.plot(x, y) plt.xlabel('x-axis') plt.ylabel('y-axis') plt.title('Line Plot') plt.show() ```
산점도
데이터의 분포를 보여주기 위해 산점도를 사용할 수 있습니다. 산점도는 두 변수 간의 상관 관계를 파악하는 데 유용합니다. Matplotlib에서는 scatter()
함수를 사용하여 산점도를 그릴 수 있습니다.
```python import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5] y = [2, 4, 6, 8, 10]
plt.scatter(x, y) plt.xlabel('x-axis') plt.ylabel('y-axis') plt.title('Scatter Plot') plt.show() ```
막대 그래프
데이터의 크기를 시각화하기 위해 막대 그래프를 사용할 수 있습니다. 막대 그래프는 각 항목의 값에 따라 막대의 높이를 조절하여 그릴 수 있으며, 범주형 데이터의 분포를 확인하는 데에 유용합니다.
```python import matplotlib.pyplot as plt
x = ['A', 'B', 'C', 'D', 'E'] y = [10, 15, 7, 12, 9]
plt.bar(x, y) plt.xlabel('Category') plt.ylabel('Value') plt.title('Bar Chart') plt.show() ```
Seaborn
Seaborn은 Matplotlib을 기반으로 한 파이썬 시각화 라이브러리로, Matplotlib의 기능을 보완하고 다양한 통계적 그래프를 그릴 수 있도록 도와줍니다.
박스 플롯
데이터의 분포와 이상치를 한 눈에 파악할 수 있는 박스 플롯은 Seaborn에서 손쉽게 그릴 수 있습니다.
```python import seaborn as sns
tips = sns.load_dataset('tips')
sns.boxplot(x='day', y='total_bill', data=tips) plt.xlabel('Day') plt.ylabel('Total Bill') plt.title('Box Plot') plt.show() ```
히트맵
두 변수 간의 상관 관계를 시각화하기 위해 히트맵을 사용할 수 있습니다. 히트맵은 데이터 값을 색상으로 표현하는데, Seaborn의 heatmap()
함수를 사용하여 그릴 수 있습니다.
```python import seaborn as sns
iris = sns.load_dataset('iris')
corr = iris.corr() sns.heatmap(corr, annot=True, cmap='coolwarm') plt.title('Heatmap') plt.show() ```
Plotly
Plotly는 인터랙티브한 시각화를 제공하는 파이썬 라이브러리로, 웹 기반의 대시보드와 그래프를 손쉽게 만들 수 있습니다.
선 그래프
Plotly에서 선 그래프를 그리기 위해서는 graph_objects
모듈에서 Scatter()
클래스를 사용합니다.
```python import plotly.graph_objects as go
x = [1, 2, 3, 4, 5] y = [2, 4, 6, 8, 10]
data = go.Scatter(x=x, y=y) fig = go.Figure(data)
fig.update_layout(title='Line Plot') fig.show() ```
3D 산점도
Plotly에서 3차원 산점도를 그리기 위해서는 plotly.express
모듈에서 scatter_3d()
함수를 사용합니다.
```python import plotly.express as px
iris = px.data.iris()
fig = px.scatter3d(iris, x='sepallength', y='petallength', z='petalwidth', color='species') fig.update_layout(title='3D Scatter Plot') fig.show() ```
결론
위에서 소개한 Matplotlib, Seaborn, Plotly를 사용하여 파이썬으로 데이터 시각화를 할 수 있습니다. 이러한 고급 플롯 기법을 사용하면 데이터에 대한 통찰력을 얻을 수 있으며, 더 나아가 인터랙티브한 그래프와 대시보드를 만들 수도 있습니다. 데이터 시각화의 중요성을 인지하고 이러한 기법들을 익혀 활용해보세요.
'■ 칼퇴를 위한 파이썬 : 사례' 카테고리의 다른 글
파이썬으로 데이터 전처리하기: 자연어 처리 (0) | 2023.07.20 |
---|---|
파이썬으로 웹 애플리케이션 개발하기: 웹 사이트 보안 취약점 보호 (0) | 2023.07.20 |
파이썬으로 웹 스크래핑하기: IP 차단 회피 기법 (0) | 2023.07.20 |
파이썬으로 딥러닝하기: 변분 오토인코더(VAE) 응용 (0) | 2023.07.20 |
파이썬으로 데이터 분석하기: 그래디언트 부스팅 기법 (0) | 2023.07.20 |