본문 바로가기
코딩취미/Python

Python Matplotlib 완벽 가이드: 그래프 및 표 생성 방법

by 브링블링 2025. 3. 15.
반응형

Python Matplotlib 완벽 가이드: 그래프 및 표 생성 방법

Python에서 데이터를 시각화하는 대표적인 라이브러리 중 하나인 matplotlib의 사용법을 초보자도 쉽게 이해할 수 있도록 단계별로 설명합니다. 특히, 다양한 그래프를 만드는 방법과 표를 추가하는 기능까지 포괄적으로 다룹니다.


1. Matplotlib 설치 및 기본 사용법

Matplotlib을 사용하려면 먼저 패키지를 설치해야 합니다.

pip install matplotlib

이제 가장 기본적인 선 그래프를 그려보겠습니다.

import matplotlib.pyplot as plt

x = [1, 2, 3, 4, 5]
y = [10, 20, 25, 30, 40]

plt.plot(x, y, marker='o', linestyle='-')
plt.xlabel('X축 라벨')
plt.ylabel('Y축 라벨')
plt.title('기본 선 그래프')
plt.show()


2. 다양한 그래프 만들기

2.1 바 차트 (Bar Chart)

import matplotlib.pyplot as plt
import numpy as np

labels = ['A', 'B', 'C', 'D']
values = [5, 7, 3, 8]

plt.bar(labels, values, color=['blue', 'orange', 'green', 'red'])
plt.xlabel('카테고리')
plt.ylabel('값')
plt.title('바 차트')
plt.show()

2.2 산점도 (Scatter Plot)

import matplotlib.pyplot as plt
import numpy as np

x = np.random.rand(50)
y = np.random.rand(50)

plt.scatter(x, y, color='purple', alpha=0.5)
plt.xlabel('X 값')
plt.ylabel('Y 값')
plt.title('산점도')
plt.show()

2.3 히스토그램 (Histogram)

import matplotlib.pyplot as plt
import numpy as np

data = np.random.randn(1000)

plt.hist(data, bins=30, color='skyblue', edgecolor='black')
plt.xlabel('값')
plt.ylabel('빈도')
plt.title('히스토그램')
plt.show()
반응형

2.4 파이 차트 (Pie Chart)

import matplotlib.pyplot as plt
import numpy as np

sizes = [30, 40, 20, 10]
labels = ['A', 'B', 'C', 'D']
colors = ['gold', 'lightcoral', 'lightskyblue', 'lightgreen']

plt.pie(sizes, labels=labels, autopct='%1.1f%%', colors=colors, startangle=140)
plt.title('파이 차트')
plt.show()

3. Matplotlib에서 표 추가하기

Matplotlib에서 표를 추가하는 다양한 방법을 소개합니다.

3.1 plt.table()을 이용한 표 생성

import matplotlib.pyplot as plt
import numpy as np

fig, ax = plt.subplots()
data = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
columns = ['A', 'B', 'C']
rows = ['Row1', 'Row2', 'Row3']

ax.axis('tight')
ax.axis('off')
table = plt.table(cellText=data, colLabels=columns, rowLabels=rows, cellLoc='center', loc='center')
plt.title('기본 표')
plt.show()

3.2 Pandas와 Matplotlib를 활용한 표

import matplotlib.pyplot as plt
import numpy as np
import pandas as pd

data = {'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]}
df = pd.DataFrame(data)

fig, ax = plt.subplots()
ax.axis('tight')
ax.axis('off')
table = plt.table(cellText=df.values, colLabels=df.columns, cellLoc='center', loc='center')
plt.title('Pandas DataFrame을 이용한 표')
plt.show()

4. 표를 추가할 수 있는 기능 목록

기능 설명
plt.table() Matplotlib 기본 테이블 생성
pandas.DataFrame Pandas와 Matplotlib 조합 사용
seaborn.heatmap() 데이터프레임을 열지도(Heatmap) 형태로 시각화

4.1 seaborn.heatmap()을 이용한 표 표현

import seaborn as sns

df = pd.DataFrame(np.random.rand(5, 5), columns=['A', 'B', 'C', 'D', 'E'])

sns.heatmap(df, annot=True, cmap='coolwarm')
plt.title('Seaborn Heatmap')
plt.show()

5. Matplotlib의 특징 및 장단점 비교

특징 장점 단점
간단한 인터페이스 빠르고 쉬운 데이터 시각화 가능 기본 스타일이 심플함
다양한 그래프 지원 선, 막대, 산점도, 히스토그램 등 다양한 그래프 제공 인터랙티브한 기능 부족
확장성 seaborn, plotly 등과 결합 가능 3D 그래프 기능이 상대적으로 제한적
 
반응형