[파이썬] seaborn 팔레트 사용자 정의

Seaborn은 데이터 시각화를 위한 파이썬 라이브러리로서, matplotlib을 기반으로 생산성과 미적 측면에서 개선하였습니다. Seaborn은 다양한 시각화 기능을 제공하며, 팔레트(Palette)는 그 중 하나입니다.

팔레트는 데이터가 어디에 속하는지를 시각적으로 표현하기 위한 색상 집합입니다. Seaborn은 다양한 기본 팔레트를 제공하지만, 때로는 특정 프로젝트 또는 분석에 맞게 팔레트를 사용자 정의해야 할 수도 있습니다.

이번 글에서는 Seaborn에서 팔레트를 사용자 정의하는 방법을 알아보겠습니다.

1. Seaborn 팔레트 사용하기

먼저, Seaborn 팔레트를 사용하는 방법에 대해 알아보겠습니다. Seaborn에서는 color_palette() 함수를 사용하여 팔레트를 생성할 수 있습니다. 예를 들어, sns.color_palette("Set2")는 Seaborn의 기본 팔레트 중 하나인 “Set2”를 생성합니다.

import seaborn as sns
import matplotlib.pyplot as plt

# 팔레트 생성
palette = sns.color_palette("Set2")

# 팔레트 적용
sns.set_palette(palette)

# 데이터 시각화
sns.scatterplot(x='x', y='y', hue='category', data=df)

# 그래프 출력
plt.show()

2. 사용자 정의 팔레트 생성하기

만일 기본 제공되는 팔레트로는 원하는 색상을 얻지 못한다면, 사용자 정의 팔레트를 생성할 수 있습니다. Seaborn에서는 다양한 방법으로 사용자 정의 팔레트를 생성할 수 있습니다.

2.1. RGB 색상값으로 팔레트 생성하기

가장 일반적인 방법은 RGB 색상값을 사용하여 팔레트를 생성하는 것입니다. 예를 들어, (255, 0, 0)은 빨간색을 나타내며, (0, 255, 0)은 초록색을 나타냅니다. Seaborn에서는 sns.color_palette() 함수에 RGB 색상값을 입력하여 팔레트를 생성할 수 있습니다.

import seaborn as sns
import matplotlib.pyplot as plt

# RGB 색상값으로 팔레트 생성
palette = sns.color_palette([(255, 0, 0), (0, 255, 0), (0, 0, 255)])

# 팔레트 적용
sns.set_palette(palette)

# 데이터 시각화
sns.scatterplot(x='x', y='y', hue='category', data=df)

# 그래프 출력
plt.show()

2.2. HEX 색상값으로 팔레트 생성하기

또한, HEX 색상값을 사용하여 팔레트를 생성할 수도 있습니다. HEX 색상값은 #으로 시작하며, 16진수로 표현된 색상값입니다. Seaborn에서는 sns.color_palette() 함수에 HEX 색상값을 입력하여 팔레트를 생성할 수 있습니다.

import seaborn as sns
import matplotlib.pyplot as plt

# HEX 색상값으로 팔레트 생성
palette = sns.color_palette(["#FF0000", "#00FF00", "#0000FF"])

# 팔레트 적용
sns.set_palette(palette)

# 데이터 시각화
sns.scatterplot(x='x', y='y', hue='category', data=df)

# 그래프 출력
plt.show()

마치며

이번 글에서는 Seaborn 팔레트를 사용자 정의하는 방법에 대해 알아보았습니다. Seaborn을 사용하여 데이터 시각화를 할 때, 적합한 팔레트를 선택하고 만약 필요하다면 사용자 정의 팔레트를 만들어 사용할 수 있습니다. 이를 통해 데이터 시각화 결과물의 디자인적인 측면을 개선할 수 있습니다.