🖥️ IT, 컴퓨터/🐍 Python

[Python] Mac 환경에서 Matplotlib pyplot 애플고딕 (AppleGothic)외의 다른 원하는 폰트로 바꾸기

김 홍시 2024. 10. 13.
반응형

문제상황

 
애플고딕이 마음에 들지 않아, Pretendard 폰트로 바꾸려고 한다.

import matplotlib.pyplot as plt
from matplotlib import font_manager, rc

# MacOS에서 한글 폰트 설정
rc('font', family='AppleGothic')

# 음수 기호(-)가 깨지는 문제 해결
plt.rcParams['axes.unicode_minus'] = False

이에 이 기존 한글 깨짐 방지 코드에서 AppleGothic을 Pretendard로 바꾸려 한다.

 

그러나 이와같이 
findfont: Font family 'Pretendard' not found. 오류가 발생한다.
 
그 이유는 시스템 상에 설치 되어있더라도 matplotlib 용으로  따로 설치해야 하기 때문
 
 

해결방법

import matplotlib
print(matplotlib.matplotlib_fname())

를 입력하여 matplotlib의 경로를 알아낸다.
 
/opt/anaconda3/lib/python3.11/site-packages/matplotlib/mpl-data/matplotlibrc
가 출력되었다. 이를 우선 복사
 
Finder > 이동 > 폴더로 이동 클릭 
 

 
복사했던 경로를 입력 

 
mpl-data > fonts > ttf 클릭 

여기에 내가 원하는 ttf 폰트 파일이 있는지 확인한다. 

 
이거밖에 없음 ㅋㅋ 

따라서 나의 소중한 Pretendard 폰트를 옮겨준다.

 
복붙 완료 

이후 파이썬에서

mpl.get_cachedir ()

입력하여 캐시 데이터 경로 알아낸다.
필자는 /Users/사용자명/.matplotlib 였다.
이를 아까 했듯이 폴더로 이동 기능으로 이동한다.

fontlist-v330.json 파일이 보이고 이를 연다.

이 중에 내가 원하는 폰트 이름 있는지 찾아봄 

내가 원하는 Pretendard는 없고 JP는 있음 
 
 'fontlist' json 파일 삭제하고 재부팅한다.

그럼 이제 Pretendard 를 입력해도 안 깨지고 예쁜 차트가 완성된다.



https://kimhongsi.tistory.com/m/entry/Python-matplotilb-pyplot-%EA%B7%B8%EB%9E%98%ED%94%84-%ED%95%9C%EA%B8%80-%EC%9D%8C%EC%88%98-%E3%85%81%E3%85%81%E3%85%81%EB%A1%9C-%EA%B9%A8%EC%A0%B8%EC%84%9C-%EB%82%98%EC%98%AC-%EB%95%8C-%ED%95%B4%EA%B2%B0%EB%B2%95

[Python] matplotilb pyplot 그래프 한글, 음수 ㅁㅁㅁ로 깨져서 나올 때 해결법

문제상황 matplotilb에서 pyplot으로 그래프 그렸는데한글과 음수가 ㅁㅁㅁ로 깨져나오는 것은 유명한 에러임 해결방법 import matplotlib.pyplot as pltfrom matplotlib import font_manager, rc# MacOS에서 한글 폰트

kimhongsi.tistory.com

한글도 안 나오는 상황이라면 위 글 참고

반응형

댓글