[시각화] matplotlib, seaborn 라이브러리 비교

2024. 1. 8. 14:03시각화

오늘은 파이썬에서 그래프를 그려 시각화를 할 수 있는 라이브러리 matplotlib와 seaborn에 대해서 복기해보도록 하겠습니다. 사실 시각화라는 것은 다양한 그래프도 있고, 시각화 하기 전에 데이터 전처리 파트도 있기 때문에 최대한 다른 데이터를 가지고 글 마다 타겟 그래프 하나를 잡아서 정리해보겠습니다. 우선 이번 글에서는 각 라이브러리의 특징, 그리고 간략한 사용방법에 대해서 다뤄보겠습니다.

 

1. 라이브러리 받기

우선 두 라이브러리 모두 기본 라이브러리가 아니기때문에 설치를 해야합니다. 설피는 다음과 같이 진행할 수 있습니다

# virtualenv 환경
!pip install matplotlib seaborn

# conda 환경
conda install matplotlib seaborn

 

2.라이브러리 비교

두 라이브러리는 모두 데이터 시각화를 위한 라이브러리입니다. 하지만 세부적인 쓰임은 조금 다를 수 있습니다. matplotlib 같은 경우는 복잡하지만 복잡한 코드만큼 많은 기능들이 있고 사용자 커스텀이 가능합니다.seaborn은 matplotlib 기반 라이브러리입니다. matplotlib의 복잡함을 해소하는 라이브러리이며, 기본값으로도 괜찮은 그래프를 그릴 수 있습니다. 하지만 matplotlib보다는 기능이 적고 사용자 커스텀에 한계가 존재합니다.

 

3.간단한 시각화

간단한 시각화를 통해서 두 라이브러리의 그래프를 비교해보도록 하겠습니다. 우선 다음과 같은 데이터를 만들겠습니다.

x=np.arange(5)
df=pd.DataFrame({
    'years':['2019','2020','2021','2022','2023'],
    'values':[300,500,100,200,500]
})

이 데이터를 두 개의 라이브러리를 통해서 막대그래프를 그려보겠습니다.

 

3.1. matplotlib

 

import matplotlib.pyplot as plt

plt.bar(df['years'],df['values'])

3.2. seaborn

import seaborn as sns

sns.barplot(x='years',y='values',data=df)

3.3 비교

정말 아무것도 안넣고 데이터만 넣고 각각의 라이브러리로 막대 그래프를 그려보았습니다. 기본값으로는 확실하게 seaborn이 잘 나오는 모습을 확인 할 수 있습니다. x축, y축의 이름도 달려있고 각 막대별로 색깔도 다르게 표현합니다. 

그에 비해 matplotlib는 데이터만 표현하는 모습입니다. 

 

4.마무리

이번 글은 단순히 비교만 하는 글이기 때문에 코드도 한줄로 간단하게 끝냈는데, 다음 시각화 글부터 하나의 그래프에 대해서 파보면서 객체 지향으로 코드를 짜고, matplotlib에서 할 수 있는 사용자 커스텀들도 자세하게 정리하는 시간을 가져보겠습니다. 

'시각화' 카테고리의 다른 글

[시각화] plotly line  (0) 2024.02.03
[시각화] plotly bar chart  (0) 2024.01.30
[시각화] plotly 기초  (0) 2024.01.11
[시각화] matplotlib, seaborn BarChart  (0) 2024.01.10