[파이썬] Matplotlib와 Seaborn의 그래프 구조

데이터 시각화는 데이터 분석과 통계 분석에서 중요한 부분입니다. Python에서는 Matplotlib와 Seaborn 라이브러리를 사용하여 다양한 그래프를 생성할 수 있습니다. 이 블로그 포스트에서는 Matplotlib와 Seaborn의 그래프 구조와 사용법에 대해 알아보겠습니다.

Matplotlib

Matplotlib는 Python에서 가장 널리 사용되는 데이터 시각화 라이브러리입니다. 다양한 종류의 그래프를 생성할 수 있으며, 사용자의 요구에 따라 다양한 옵션을 조정할 수 있습니다. Matplotlib의 그래프 구조는 다음과 같습니다.

Figure

Figure는 그래프가 그려지는 캔버스입니다. Figure 객체를 생성하고 그 위에 그래프를 그립니다. Figure는 그래프의 크기와 배경 등 그래프에 대한 전반적인 설정을 담당합니다.

import matplotlib.pyplot as plt

fig = plt.figure()

Axes

Axes는 그래프의 틀이며, 실제로 데이터가 그려지는 영역입니다. Figure 위에 여러개의 Axes를 추가할 수 있으며, 각각의 Axes에는 그래프와 축, 레이블 등을 설정할 수 있습니다.

import matplotlib.pyplot as plt

fig = plt.figure()
axes = fig.add_subplot(111)  # 1x1 그리드의 첫 번째 Axes

axes.plot([1, 2, 3, 4], [1, 4, 3, 2])

Axis

Axis는 그래프의 축을 의미합니다. x축과 y축을 설정하고, 라벨과 눈금 등을 추가할 수 있습니다.

import matplotlib.pyplot as plt

fig = plt.figure()
axes = fig.add_subplot(111)
axes.plot([1, 2, 3, 4], [1, 4, 3, 2])

axes.set_xlabel('X-axis')
axes.set_ylabel('Y-axis')
axes.set_title('Graph')

Seaborn

Seaborn은 Matplotlib를 기반으로 한 통계적 그래프를 그리는 라이브러리입니다. Matplotlib에 비해 더 간편하고 깔끔한 그래프를 생성할 수 있으며, 많은 통계 기능을 제공합니다. Seaborn의 그래프 구조는 Matplotlib와 유사하지만 몇 가지 차이점이 있습니다.

Figure와 Axes

Seaborn도 Matplotlib와 마찬가지로 Figure와 Axes 구조를 가지고 있습니다. 그러나 Seaborn에서는 Figure와 Axes를 인자로 받지 않고, 자동으로 생성합니다.

import seaborn as sns

sns.lineplot(x=[1, 2, 3, 4], y=[1, 4, 3, 2])

Styling

Seaborn은 Matplotlib보다 더 많은 스타일 옵션을 제공합니다. 디폴트로 세련된 스타일을 사용하며, 테마, 컬러 팔레트, 그리드, 축 등을 설정할 수 있습니다.

import seaborn as sns

sns.set(style="ticks", palette="pastel")

결론

Matplotlib와 Seaborn은 Python에서 데이터 시각화를 위해 사용되는 강력한 라이브러리입니다. Matplotlib는 그래프의 전반적인 구조를 직접 조절할 수 있으며, Seaborn은 더 간편하고 세련된 그래프 스타일을 제공합니다. 이 두 라이브러리를 함께 사용하여, 다양한 종류의 그래프를 생성하고 통계 분석에 활용할 수 있습니다.