코랩에서 Seaborn과 Matplotlib 한글 깨짐 문제 해결하기

구글 코랩은 데이터 분석과 머신러닝을 쉽게 수행할 수 있는 플랫폼으로, 많은 데이터 과학자와 머신러닝 엔지니어들이 즐겨 사용하고 있습니다. 하지만 코랩에서 시각화 라이브러리인 Matplotlib과 Seaborn을 사용할 때 한글이 깨지는 문제가 발생할 수 있습니다.

이 문제는 한국어를 사용하는 사용자들에게 큰 불편을 초래할 수 있으므로, 본 글에서는 이 문제를 해결하기 위한 방법을 자세히 설명하겠습니다.

썸네일

한글 깨짐 현상의 원인

Matplotlib과 Seaborn은 기본적으로 시스템에 설치된 폰트를 사용하여 그래프를 렌더링합니다. 그러나 코랩의 경우, 기본적으로 설치된 폰트가 한글을 지원하지 않기 때문에, 한글 텍스트가 깨지게 됩니다.

이러한 문제는 데이터 분석 결과를 시각화할 때 한글 레이블이나 제목을 사용할 경우 많이 발생합니다. 따라서, 한글 지원 폰트를 설치하고 설정하는 것이 필요합니다.

원인 설명
기본 폰트 설정 기본적으로 한글을 지원하지 않는 폰트가 설정되어 있음
폰트 설치 부족 한글을 지원하는 폰트가 설치되어 있지 않음

한글 폰트 설치 및 설정 방법

한글 깨짐 문제를 해결하기 위해서는 먼저 한글 폰트를 설치해야 합니다. 구글 코랩에서는 아래와 같은 코드를 사용하여 한글 폰트를 설치할 수 있습니다.

이 코드는 단 한 번 실행하면 되며, 실행 후에는 반드시 런타임을 다시 시작해야 합니다.

“`python
!apt-get -qq install -y fonts-nanum
import matplotlib.pyplot as plt
import seaborn as sns
from matplotlib import font_manager, rc

font_path = ‘/usr/share/fonts/truetype/nanum/NanumGothic.ttf’
font = font_manager.FontProperties(fname=font_path, size=12)
rc(‘font’, family=font.get_name())
“`

위 코드를 실행하면 NanumGothic 폰트를 설치하고, Matplotlib과 Seaborn에서 사용할 수 있도록 설정합니다. 이후에는 그래프를 그릴 때 한글이 정상적으로 표시됩니다.

단계 설명
폰트 설치 !apt-get 명령어를 통해 한글 폰트 설치
폰트 경로 설정 설치된 폰트의 경로를 지정하여 Matplotlib에 적용시키기
런타임 재시작 설정이 적용되도록 런타임을 재시작해야 함

다른 내용도 보러가기 #1

한글이 포함된 그래프 그리기

이제 한글 폰트를 설치하고 설정했으니, 실제로 한글이 포함된 그래프를 그려보도록 하겠습니다. 아래는 간단한 데이터를 바탕으로 한 Seaborn의 막대 그래프 예제입니다.

“`python
import pandas as pd

data = {
‘제품’: [‘사과’, ‘바나나’, ‘체리’, ‘포도’],
‘판매량’: [150, 200, 100, 300]
}

df = pd.DataFrame(data)

plt.figure(figsize=(10, 5))
sns.barplot(x=’제품’, y=’판매량’, data=df)
plt.title(‘과일 판매량’, fontsize=15)
plt.xlabel(‘과일 종류’, fontsize=12)
plt.ylabel(‘판매량 (개수)’, fontsize=12)
plt.show()
“`

위 코드를 실행하면, ‘과일 판매량’이라는 제목과 함께 한글 레이블이 포함된 막대 그래프가 정상적으로 표시됩니다. 이처럼 한글이 포함된 그래프를 그릴 수 있게 되면, 데이터 분석 결과를 보다 효과적으로 전달할 수 있습니다.

그래프 요소 설명
제목 그래프의 제목을 한글로 설정
x축 레이블 제품 종류를 한글로 설정
y축 레이블 판매량 단위를 한글로 설정

다양한 그래프에서의 한글 지원

한글 깨짐 문제를 해결한 후, 다양한 그래프에서도 한글을 사용하는 방법을 살펴보겠습니다. 예를 들어, 선 그래프나 히스토그램 등에서도 한글을 사용할 수 있습니다.

아래 예제는 Seaborn의 히스토그램을 사용하여 데이터를 시각화하는 방법입니다.

“`python
import numpy as np

data = np.random.normal(size=1000)
plt.figure(figsize=(10, 5))
sns.histplot(data, bins=30, kde=True)
plt.title(‘정규 분포 히스토그램’, fontsize=15)
plt.xlabel(‘값’, fontsize=12)
plt.ylabel(‘빈도’, fontsize=12)
plt.show()
“`

위 코드를 실행하면 ‘정규 분포 히스토그램’이라는 제목과 함께 한글 레이블이 포함된 히스토그램이 나타납니다. 다양한 그래프에서도 한글을 지원할 수 있으므로, 데이터 시각화의 폭이 넓어집니다.

그래프 종류 설명
선 그래프 시간에 따른 변화를 보여주는 그래프
히스토그램 데이터의 분포를 나타내는 그래프
산점도 두 변수 간의 관계를 나타내는 그래프

고급 설정 및 추가 팁

한글 지원을 위한 설정 외에도, 그래프의 시각적 요소를 조정하여 더욱 전문적인 결과물을 만들 수 있습니다. 색상, 스타일, 레이아웃 등을 조정하여 시각적 효과를 극대화할 수 있습니다.

또한, 시각화에 사용할 수 있는 다양한 색상 팔레트를 활용하면 더욱 매력적인 그래프를 생성할 수 있습니다.

python
sns.set_palette("pastel")
plt.figure(figsize=(10, 5))
sns.barplot(x='제품', y='판매량', data=df)
plt.title('과일 판매량', fontsize=15)
plt.xlabel('과일 종류', fontsize=12)
plt.ylabel('판매량 (개수)', fontsize=12)
plt.show()

위와 같이 색상 팔레트를 설정하면, 보다 부드럽고 시각적으로 편안한 그래프를 생성할 수 있습니다. 이는 데이터 분석 결과를 발표하거나 보고서에 포함할 때 큰 도움이 됩니다.

설정 요소 설명
색상 팔레트 그래프의 색상을 조정하여 시각적 효과 증대
스타일 다양한 스타일을 통해 그래프의 느낌 변화
레이아웃 그래프의 크기와 배치를 조정하여 가독성 향상

다른 내용도 보러가기 #2

결론

구글 코랩에서 Matplotlib과 Seaborn을 사용하여 한글을 포함한 그래프를 그리는 것은 처음에는 어려울 수 있지만, 적절한 폰트 설치와 설정을 통해 쉽게 해결할 수 있습니다. 한글 깨짐 문제를 해결한 후에는 다양한 그래프를 활용하여 데이터 분석 결과를 효과적으로 전달할 수 있습니다.

이 글에서 설명한 방법을 통해 여러분도 한글이 포함된 아름다운 그래프를 만들 수 있기를 바랍니다. 데이터 시각화는 데이터 분석의 중요한 부분이므로, 이를 통해 더욱 효과적인 데이터 전달이 이루어지길 기대합니다.

관련 영상

같이 보면 좋은 글

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다