=_=/컴퓨터 잘 아는척 얘기 (컴.잘.아.)

Google Colab 한글 깨짐 완벽 해결 가이드 (2026년 최신)

Z46 2025. 12. 27. 10:34

안녕하세용~ 오늘은 Google Colab에서 데이터 분석하다가 한글이 ㅁㅁㅁ 요렇게 깨지는 문제.. 완전 짜증나는 그 문제를 해결하는 방법에 대해 알려드릴게요!!

저도 처음에 Colab 쓸 때 matplotlib으로 그래프 그렸는데 제목이랑 축 이름이 전부 네모박스로 나와서 진짜 당황했거든용 ㅋㅋ

근데 의외로 해결방법은 정말 간단합니다~! ^_^

왜 한글이 깨지는 걸까요?

일단 원인부터 알아야겠죠?

Google Colab은 기본적으로 한글 폰트가 설치되어 있지 않습니다. 그래서 matplotlib이나 seaborn 같은 시각화 라이브러리로 그래프를 그릴 때 한글을 표현할 수가 없어요. 컴퓨터 입장에서는 "어? 이 글자 뭔지 모르겠는데?" 요런 상황인 거죠 ㅎㅎ

그리고 또 다른 케이스로는, pandas로 CSV 파일 읽거나 쓸 때 인코딩 문제로 한글이 깨지는 경우가 있어요. 특히 공공데이터 포털에서 받은 파일들은 대부분 cp949나 euc-kr로 인코딩되어 있는데, 이걸 utf-8로 읽으려고 하면 완전 난리가 나는 거죠...

정리하면 요런 케이스들이 있습니다

matplotlib/seaborn 그래프 한글 폰트 미설치 그래프 제목, 축 이름이 ㅁㅁㅁ로 표시
pandas CSV 읽기 인코딩 불일치 (cp949 vs utf-8) UnicodeDecodeError 발생 또는 한글 깨짐
pandas CSV 쓰기 utf-8 인코딩만 사용 윈도우 엑셀에서 열면 한글 깨짐

해결방법 1: 나눔폰트 설치하기 (가장 간단!)

요건 matplotlib이나 seaborn 쓸 때 한글이 깨지는 문제를 해결하는 방법이에요. 2025년 현재 가장 많이 쓰이는 방법이고, 제일 간단합니다!!

Step 1: 폰트 설치 코드 실행

Colab 노트북 맨 위에 새로운 셀을 만들고 아래 코드를 붙여넣기 해주세요~

!sudo apt-get install -y fonts-nanum
!sudo fc-cache -fv
!rm ~/.cache/matplotlib -rf

요 코드가 뭐하는 건지 간단하게 설명하자면:

  • !sudo apt-get install -y fonts-nanum: 나눔 폰트를 설치합니다
  • !sudo fc-cache -fv: 폰트 캐시를 갱신합니다
  • !rm ~/.cache/matplotlib -rf: matplotlib 캐시를 삭제합니다

Step 2: 런타임 다시 시작

코드 실행하고 나면, 반드시 런타임을 재시작해야 해요!

상단 메뉴에서 런타임  런타임 다시 시작 클릭! (이거 완전 중요합니다 ^^)

Step 3: 폰트 설정 코드 추가

이제 그래프 그리기 전에 요 코드를 실행해주세요~

import matplotlib.pyplot as plt

plt.rc('font', family='NanumBarunGothic')

끝~~ 이제 한글이 정상적으로 나옵니다! ㅎㅎ


해결방법 2: pandas CSV 파일 읽을 때 인코딩 지정

공공데이터 같은 거 다운받아서 읽을 때 자주 발생하는 문제죠. 요건 인코딩을 정확하게 지정해주면 됩니다!

케이스 1: cp949 인코딩 파일

대부분의 한국 공공데이터는 cp949로 되어 있어요.

import pandas as pd

# 일반적인 경우
df = pd.read_csv('파일명.csv', encoding='cp949')

# 그래도 안되면
df = pd.read_csv('파일명.csv', encoding='euc-kr')

케이스 2: 어떤 인코딩인지 모를 때

여러 인코딩을 시도해보거나, 아니면 에러를 무시하는 방법도 있어요.

# 에러 무시하고 읽기
df = pd.read_csv('파일명.csv', encoding='utf-8', encoding_errors='ignore')

# 또는 unicode_escape 사용
df = pd.read_csv('파일명.csv', encoding='unicode_escape')

요 표로 정리해볼게요!

encoding='cp949' 한국 공공데이터 (대부분) 가장 먼저 시도
encoding='euc-kr' cp949로 안될 때 두 번째 시도
encoding='utf-8' 최근 파일, 국제 표준 기본값
encoding_errors='ignore' 일부 글자 깨져도 OK 비상용

해결방법 3: pandas CSV 저장할 때 utf-8-sig 사용

요건 반대로 CSV 파일을 저장할 때 윈도우 엑셀에서도 잘 보이게 하는 방법이에요!

import pandas as pd

# 일반 utf-8은 윈도우 엑셀에서 깨짐
df.to_csv('결과.csv', index=False, encoding='utf-8')  # ❌ 깨짐

# utf-8-sig 사용하면 해결!
df.to_csv('결과.csv', index=False, encoding='utf-8-sig')  # ✅ 정상

utf-8-sig가 뭔데?

utf-8-sig는 파일 맨 앞에 BOM(Byte Order Mark)이라는 특수한 표시를 추가해요. 요게 있으면 윈도우 엑셀이 "아~ 이 파일은 UTF-8이구나!" 하고 인식한답니다 ㅎㅎ

완전 간단하죠? 그냥 utf-8 대신 utf-8-sig만 써주면 되는 거라노~

비교표: 각 방법 언제 쓸까?

matplotlib 그래프 한글 깨짐 나눔폰트 설치 + plt.rc 설정 ⭐ 쉬움
CSV 읽기 에러 (UnicodeDecodeError) encoding='cp949' 또는 'euc-kr' ⭐ 쉬움
CSV 저장 후 엑셀에서 깨짐 encoding='utf-8-sig' ⭐ 쉬움
모든 케이스 종합 위 3가지 조합 ⭐⭐ 보통

주의사항!!

몇 가지 팁을 드리자면요~

  1. 런타임 재시작은 필수: 폰트 설치하고 런타임 재시작 안하면 소용없어요! 꼭 해주세용
  2. 매번 설정 필요: Colab은 세션이 끊기면 초기화되니까, 새로운 노트북 열 때마다 폰트 설치 코드를 다시 실행해야 해요
  3. 인코딩은 파일마다 다름: cp949로 안되면 euc-kr, 그것도 안되면 utf-8 이런 식으로 시도해보세요!

마무리

Google Colab 한글 깨짐 문제, 생각보다 해결이 간단하죠? ㅎㅎ

정리하자면

  • 그래프 한글 깨짐 → 나눔폰트 설치 + 런타임 재시작
  • CSV 읽기 깨짐 → encoding 옵션 조정 (cp949, euc-kr)
  • CSV 저장 깨짐 → utf-8-sig 사용

요 세 가지만 기억하시면 Colab에서 한글 관련 문제는 99% 해결됩니다!! 완전

혹시 이것도 안되면 댓글로 상황 알려주세요~ 같이 해결해봅시다아 ㅎㅎ

데이터 분석 화이팅!! 🔥


해시태그

#GoogleColab #구글코랩 #한글깨짐 #한글깨짐해결 #matplotlib한글 #pandas한글 #데이터분석 #Python #파이썬 #인코딩 #UTF8 #CP949 #나눔폰트 #NanumFont #CSV한글 #데이터전처리 #Colab사용법 #주피터노트북 #JupyterNotebook #코딩 #프로그래밍 #머신러닝 #MachineLearning #DataScience #데이터사이언스 #초보개발자 #개발자 #코딩공부 #데이터분석공부 #Seaborn #시각화 #데이터시각화 #엑셀 #공공데이터 #UnicodeError #인코딩오류