본문 바로가기
Computer Science/Errors

구글 코랩(colab) 한글 폰트 깨짐 현상

by Henry Cho 2025. 11. 27.

# 한글 폰트 설정하기

개념도나 구상도를 그릴 때 코드로 작성해서 초안을 만들게 되면 display()를 통해서 출력해 가면서 수정이 가능하기 때문에 수정하기가 편하다. 영어야 기본 세팅이기 때문에 특정 폰트를 사용하지 않는 이상 폰트 깨짐이 발생하지 않지만 한글의 경우 기본 값이 아니다 보니 코랩에서 한글 폰트를 설치해줘야 한다. 해결 방법이 여러가지이기도 하고 잘못된 방법이 소개되어 있다 보니, 챗지피티한테 물어봤을 때도 한 번에 정확한 방법을 알려주지 못할 때가 있다. 아래의 방법은 나도 종종 사용하는 방법이기에 문제없이 복사해서 붙여넣으면 한글 폰트 깨짐을 해결할 수 있을 것이다.


우선 아래의 코드를 통해서 폰트를 설치해준다. 나는 나눔 폰트로 예를 들었지만 다른 정해진 폰트를 설치해야 한다면 폰트 이름을 바꿔서 설치해 주면 된다. 잘 모르겠으면 아래 코드 복사해서 원하는 폰트로 코랩에 설치하는 방법 물어봐주면 챗지피티가 잘 알려준다.

!apt-get -y install fonts-nanum graphviz
!fc-cache -fv

두 번째로 설치된 폰트의 경로와 설정을 본인 코드에서 해야 한다. 아래는 예제 코드이기에 잘 설치되었는지 확인이 필요하면 아래 코드를 복사해서 돌려보면 된다. #2)에 보면 font_path가 있는데, 내가 별도로 지정한 게 아니라 저기가 실제 코랩 폰트가 있는 위치이다. 왼쪽 메뉴에서 폴더를 통해서 해당 경로로 접근하면 실제로 여러 폰트들이 설치되어 있다. 그리고 사전에 오류 방지 목적하에 아래 예제처럼 그래프를 사용 중이면 #1) 초기화와 # 마이너스 깨짐 방지 코드도 같이 넣어주면 된다.

import matplotlib.pyplot as plt
import matplotlib.font_manager as fm

# 1) Matplotlib 설정 초기화
plt.rcdefaults()

# 2) NanumGothic 폰트를 경로로 불러오기
font_path = "/usr/share/fonts/truetype/nanum/NanumGothic.ttf"
font_prop = fm.FontProperties(fname=font_path)

plt.rcParams['axes.unicode_minus'] = False  # 마이너스 깨짐 방지

# 3) 전역 font.family는 건드리지 않고, 텍스트에만 fontproperties로 지정
plt.figure(figsize=(5, 3))
plt.title("한글 폰트 테스트", fontproperties=font_prop)
plt.plot([-1, 0, 1], [-1, 0, 1])
plt.xlabel("테스트 X축", fontproperties=font_prop)
plt.ylabel("테스트 Y축", fontproperties=font_prop)
plt.show()

 

Figure 1. 그래프 예시


아래는 내 데이터 검증 추적성 다이어그램을 한글 버전으로 바꾼 예시이다. 이처럼 개념도, 구상도와 같이 다이어그램 만들때 나는 코랩을 자주 이용하는 편이다. 개발쟁이여서 그런지는 몰라도 마우스로 도형 그리고 앉아 있는 것보다 코드로 수정하는 게 훨씬 편하다. 혹시라도 코랩으로 다이어그램 그리는 팁이 필요하면 댓글로 알려주길 바란다.

 

Figure 2. 예시 다이어그램


 

728x90

댓글