[파이썬] Matplotlib와 Seaborn을 이용한 대시보드 제작

Python은 데이터 시각화를 위한 다양한 라이브러리를 제공하며, 그 중에서도 Matplotlib와 Seaborn은 가장 널리 사용되는 라이브러리입니다. 이들을 이용하여 데이터를 시각화하고 인터랙티브한 대시보드를 제작할 수 있습니다. 이번 글에서는 Matplotlib와 Seaborn을 이용하여 대시보드를 제작하는 방법에 대해 알아보겠습니다.

1. Matplotlib를 이용한 대시보드 제작

Matplotlib는 Python에서 데이터를 시각화하는 데 가장 기본적인 도구입니다. 다양한 유형의 그래프를 생성하고, 색상과 스타일을 조정하여 데이터를 시각적으로 표현할 수 있습니다.

import matplotlib.pyplot as plt

# 데이터 생성
x = [1, 2, 3, 4, 5]
y = [4, 2, 7, 1, 6]

# 그래프 생성
plt.plot(x, y)

# 그래프 스타일 설정
plt.title("Sample Graph")
plt.xlabel("X-axis")
plt.ylabel("Y-axis")

# 그래프 출력
plt.show()

위의 코드는 Matplotlib를 사용하여 간단한 선 그래프를 생성하는 예시입니다. plot 함수를 사용하여 x와 y 데이터를 전달하고, title, xlabel, ylabel 함수를 사용하여 그래프의 제목과 축 레이블을 설정합니다. 마지막으로 show 함수를 호출하여 그래프를 출력합니다.

2. Seaborn을 이용한 대시보드 제작

Seaborn은 Matplotlib의 상위 레벨 라이브러리로서, Matplotlib보다 강력한 시각화 기능을 제공합니다. Seaborn은 Matplotlib의 스타일을 개선하고, 다양한 종류의 그래프를 더 쉽게 생성할 수 있도록 도와줍니다.

import seaborn as sns

# 데이터 생성
tips = sns.load_dataset("tips")

# 그래프 생성
sns.barplot(x="day", y="total_bill", data=tips)

# 그래프 스타일 설정
plt.title("Total Bill by Day")
plt.xlabel("Day")
plt.ylabel("Total Bill")

# 그래프 출력
plt.show()

위의 코드는 Seaborn을 사용하여 요일별 전체 계산 금액을 막대 그래프로 시각화하는 예시입니다. barplot 함수를 사용하여 x와 y 데이터를 전달하고, title, xlabel, ylabel 함수를 사용하여 그래프의 제목과 축 레이블을 설정합니다. Matplotlib과 마찬가지로 show 함수를 호출하여 그래프를 출력합니다.

3. Matplotlib와 Seaborn을 이용한 대시보드 제작 예시

Matplotlib와 Seaborn을 함께 사용하여 대시보드를 제작하는 것도 가능합니다. 예를 들어, Matplotlib를 사용하여 시계열 데이터를 선 그래프로 시각화하고, Seaborn을 사용하여 범주형 데이터를 막대 그래프로 시각화할 수 있습니다.

import matplotlib.pyplot as plt
import seaborn as sns

# 시계열 데이터 생성
x = [1, 2, 3, 4, 5]
y1 = [4, 2, 7, 1, 6]
y2 = [3, 5, 2, 6, 4]

# 그래프 생성
plt.plot(x, y1, label="Data 1")
plt.plot(x, y2, label="Data 2")

# 그래프 스타일 설정
plt.title("Sample Dashboard")
plt.xlabel("X-axis")
plt.ylabel("Y-axis")
plt.legend()

# 그래프 출력
plt.show()

# 범주형 데이터 생성
data = {"Category": ["A", "B", "C", "D"],
        "Value": [20, 35, 30, 15]}

# 그래프 생성
sns.barplot(x="Category", y="Value", data=data)

# 그래프 스타일 설정
plt.title("Category Values")
plt.xlabel("Category")
plt.ylabel("Value")

# 그래프 출력
plt.show()

위의 코드는 Matplotlib를 사용하여 시계열 데이터를 선 그래프로, Seaborn을 사용하여 범주형 데이터를 막대 그래프로 시각화하는 예시입니다. 두 그래프를 모두 생성하고 스타일을 설정한 후 각각 그래프를 출력합니다.

Matplotlib와 Seaborn은 각각 고급 시각화를 제공하는 도구입니다. 이들을 같이 사용하여 대시보드를 제작하면 보다 다양한 시각화를 구성할 수 있습니다. 적절한 그래프 모양과 스타일을 선택하여 데이터를 효과적으로 전달할 수 있는 유용한 대시보드를 제작해보세요.