CODEDRAGON ㆍDevelopment/Python
Matplotlib 폰트 설정 방법(한글 깨짐 해결방법)
· matplotlib의 설정 파일 위치 정보 확인하기
· FontProperties()를 사용하는 방법
· matplotlib.rcParams[]으로 설정하는 방법
· FontProperties() 와 plt.rc() 를 사용하는 방법
· 설정 파일에 직접 지정하는 방법
matplotlib의 설정 파일 위치 정보 확인하기
설치 위치: C:\Python\Python36\Lib\site-packages\matplotlib\__init__.py 설정 위치: C:\Users\codedragon\.matplotlib 캐시 위치: C:\Users\codedragon\.matplotlib |
폰트파일 정보는 설정 위치의 fontList.json 파일에 저장되어 있습니다.
C:\Users\codedragon\.matplotlib
등록된 폰트파일과 폰트파일의 이름(name)을 지정하여 사용할 수 있습니다.
fontList.json 파일은 Matplotlib 이 처음 로딩될때 마다 파일이 최신 내용으로 갱신되어 집니다.
새로만들어진 fontList.json 파일은 309KB에서 313KB로 파일 크기가 증가한 것을 알 수 있습니다.
캐싱된 내용이 있는 경우 새로운 내용이 적용되지 않을 수 있습니다. 이 경우 fontList.json 파일을 삭제한 후 다시 실행하면 fontList.json 파일이 최신내용으로 새롭게 만들어집니다.
FontProperties()를 사용하는 방법
그래프의 폰트가 필요한 함수마다 지정해 주어야 합니다. 지정해 준 항목에만 해당 폰트가 적용 됩니다
클래스 |
함수 |
matplotlib.pyplot |
title() xlabel() ylabel() legend() text() |
matplotlib.axes |
set_title() |
Step 1: 폰트 정보를 가지고 있는 FontProperties 객체 생성
fontprop = fm.FontProperties(fname="c:/Windows/Fonts/malgun.ttf", size=14) |
fontprop = fm.FontProperties(fname="c:/Windows/Fonts/malgun.ttf").get_name() |
Step 2:텍스트를 사용하는 함수에 파라미터로 지정해 줍니다.
plt.xlabel("특성", fontproperties=fontprop) |
matplotlib.rcParams[]으로 설정하는 방법
· 전역글꼴을 설정 방법입니다.
· 그래프에 설정을 해주면 폰트가 필요한 항목에 적용 됩니다.
Step 1: 전역글꼴 설정 확인하기
print('폰트 사이즈size)') print (plt.rcParams['font.size'] )
print('폰트 글꼴(family)') print (plt.rcParams['font.family'] ) |
폰트 사이즈size) 10.0 폰트 글꼴(family) ['sans-serif'] |
Step 2: 전역글꼴 설정 하기
plt.rcParams["font.family"] = "Nanum Pen Script" plt.rcParams["font.size"] = 12 plt.rcParams["figure.figsize"] = (14,4) |
FontProperties() 와 plt.rc() 를 사용하는 방법
전역폰트를 설정하는 또다른 방법입니다.
path = 'C:\\WINDOWS\\Fonts\\NanumBrush.ttf' font_name = fm.FontProperties(fname=path, size=50).get_name() print(font_name) plt.rc('font', family=font_name)
|
설정 파일에 직접 지정하는 방법
· mpl.matplotlib_fname()으로 설정 파일 위치를 한 한 후 해당 설정파일을 직접 수정하면 모든 곳에서 현재 시스템에서 모두 동일하게 사용할 수 있습니다.
· 노트북을 사용하는 경우 노트북을 열 때마다 지정해 주지 않아도 됩니다.
Step 1: 설정파일 위치 확인하기
print ('설정파일 위치: ', mpl.matplotlib_fname()) |
설정파일 위치: C:\Python\Python35-32\lib\site-packages\matplotlib\mpl-data\matplotlibrc |
C:\Python\Python36\Lib\site-packages\matplotlib\mpl-data
Step 2: 설정파일의 font설정 수정하기
194번째 라인에 있는 주석을 삭제한 후 원하는 글꼴을 설정하면 됩니다.
#font.family : sans-serif #font.style : normal #font.variant : normal #font.weight : normal #font.stretch : normal |
font.family : NanumGothic #font.style : normal #font.variant : normal #font.weight : normal #font.stretch : normal |
'Development > Python' 카테고리의 다른 글
AttributeError: module 'scipy' has no attribute 'stats' 해결방법 (1) | 2019.01.13 |
---|---|
파이썬, 주피터노트북, 주피터랩 - 한글깨짐 해결, 마이너스 깨짐 해결 - simple code (0) | 2019.01.06 |
JupyterLab 실행하기 (0) | 2018.12.27 |
len() (0) | 2018.12.21 |
JupytherLab - install (주피터랩 설치하기) (0) | 2018.12.15 |