Python/Matplotlib

[Matplotlib] 코랩 한글 깨짐 해결법 (Colab plt 그래프 한글 적용)

jimmy_AI 2021. 11. 9. 20:06
반응형

안녕하세요. matplotlib (plt)를 코랩 환경에서 사용 중 그래프에 한글을 출력해야 할 때, 그대로 출력하면 한글 깨짐 현상이 발생하게 되는데요, 이번 포스팅에서는 이 한글 깨짐 현상을 해결하는 방법에 대해서 말씀드리도록 하겠습니다.

 

plt 한글 깨짐 현상

우선, 이해를 돕기 위해 예시 그래프를 하나 그려보도록 하겠습니다.

다음과 같이 코드를 입력해주세요.

import matplotlib.pyplot as plt

x = ['가', '나', '다', '라', '마']
y = [15, 33, 28, 17, 22]
plt.bar(x, y, color = 'cyan')
plt.show()

아마도 warning 메시지가 잔뜩 뜨면서 위와 같이 한글 폰트가 깨져있는 것을 확인하실 수 있습니다.

matplotlib에서 기본으로 제공하는 폰트에서 한글을 지원하지 않기 때문인데요,

이제 이를 코랩 환경에서 해결하는 방법을 말씀드리겠습니다.

 

코랩 plt 한글 깨짐 해결법

폰트는 나눔 고딕, 기본 폰트 사이즈 10 기준으로 다음과 같은 소스 코드를 실행해주시면 됩니다.

!apt-get update -qq
!apt-get install fonts-nanum* -qq

import matplotlib.font_manager as fm
import warnings
warnings.filterwarnings(action='ignore') 

path = '/usr/share/fonts/truetype/nanum/NanumGothic.ttf' # 나눔 고딕
font_name = fm.FontProperties(fname=path, size=10).get_name() # 기본 폰트 사이즈 : 10
plt.rc('font', family=font_name)
fm._rebuild()

아마도 그러면 어떤 메시지가 주르르륵 뜨면서 패키지가 설치되고,

셀 실행이 완료되면 적용 준비가 끝난 것입니다!

 

이제 그래프를 그리는 코드를 다시 실행시켜 주시면 되는데요,

만일 똑같은 오류가 반복되는 경우, 런타임 메뉴에서 런타임 다시 시작을 진행해주시고, 폰트 설정 코드를 재실행해주세요!

 

이제 그래프를 그리는 코드를 실행하면 다음과 같이 한글 폰트가 정상 출력되는 것을 확인하실 수 있습니다.

다른 나눔 폰트 적용 방법

위 코드에서 path = ~~~ 이라고 지정된 부분에 다른 폰트의 디렉토리에 해당하는 경로를 지정하고 윗 코드를 재실행 시켜주면 완료됩니다.

 

지원하는 폰트 종류를 보고 적용하는 방법은 다음과 같습니다.

 

1. 코랩 왼쪽 폴더 모양 클릭

2. 상위 디렉토리(맨 위 화살표 위쪽 모양, .. 이라고 적힌 폴더 클릭)

3. usr -> share -> fonts -> truetype -> nanum 폴더 진입

4. 원하는 폰트 찾아서 우측 클릭, 경로 복사 선택

5. 윗 코드에 복사된 경로로 path 재지정 후 코드 재실행

 

이상으로 Colab에서 matplotlib에서 그래프를 그릴 때 생기는 한글 깨짐 현상을 나눔 폰트를 적용하는 방법을 통하여 수정할 수 있는 간단한 방법에 대해서 알아보았습니다.