본문 바로가기
Category/Note

[Google Colab] 구글 코랩 Matplotlib 한글 깨짐 문제 해결

by Corinee 2024. 12. 9.
728x90
반응형

Google Colab에서 Matplotlib 한글 깨짐 문제

Google Colab에서 Matplotlib를 사용하여 그래프를 그릴 때 한글 제목이나 라벨이 깨져서 제대로 표시되지 않는 문제가 발생할 수 있습니다. Google Colab 환경에서 Matplotlib 한글 깨짐 문제를해결하는 방법을 안내합니다.

문제의 원인

  1. Google Colab에는 기본적으로 한글 폰트가 설치되어 있지 않습니다.
  2. Matplotlib는 설치된 폰트를 기반으로 텍스트를 렌더링하는데, 한글 폰트가 없으면 텍스트가 깨져 보입니다.
  3. 폰트를 설치해도 캐시를 초기화하거나 런타임을 재시작하지 않으면 새 폰트가 제대로 반영되지 않습니다.

해결 방법

1. 나눔 폰트 설치

Google Colab 환경에 한글 폰트(NanumBarunGothic)를 설치합니다.

!sudo apt-get install -y fonts-nanum

2. 폰트 캐시 초기화

설치된 폰트를 Colab 시스템에 반영하기 위해 폰트 캐시를 초기화합니다.

!sudo fc-cache -fv

3. Matplotlib 캐시 삭제

Matplotlib는 캐시에 저장된 기존 폰트를 계속 사용하려 하기 때문에, 캐시를 삭제하여 새로운 폰트를 인식하도록 합니다.

!rm ~/.cache/matplotlib -rf

4. 런타임 재시작

위 과정을 모두 마친 후 런타임을 재시작하세요. 재시작하지 않으면 설치된 폰트가 반영되지 않습니다.

5. 나눔 폰트 적용 및 한글 그래프 그리기

아래 Python 코드를 실행하여 나눔 폰트를 적용한 후 한글이 제대로 표시되는지 확인합니다.

import matplotlib.pyplot as plt

# 나눔 폰트를 matplotlib 기본 폰트로 설정
plt.rc('font', family='NanumBarunGothic')

# 테스트 데이터
name = "서울"
result = [1000, 1200, 1300, 1400, 1500]  # 예시 데이터

# 그래프 그리기
plt.figure(figsize=(5, 3))
plt.title(name + " 지역의 연령별 인구분포 현황")
plt.bar([x for x in range(len(result))], result)
plt.xlabel("연령")
plt.ylabel("인구수")
plt.show()

전체 과정 요약

  1. 나눔 폰트 설치:
    !sudo apt-get install -y fonts-nanum
  2. 폰트 캐시 업데이트:
    !sudo fc-cache -fv
  3. Matplotlib 캐시 삭제:
    !rm ~/.cache/matplotlib -rf
  4. 런타임 재시작.
  5. Python 코드에서 나눔 폰트 적용:
    plt.rc('font', family='NanumBarunGothic')