티스토리 뷰

반응형


문제점 


  • matplotlib 에서 한글을 사용할 경우 흔히 발생하는 문제점입니다. 그래프의 제목을 [matplotlib - 매트 플롯 라이브러리] 라고 설정했는데, matplotlib 만 제대로 나오고 한글은 네모로 나오는 것을 볼 수 있습니다.

  • 이는 matplotlib 에서 기본적으로 제공하는 font 가 한글 font 를 가지고 있지 않기 때문에 발생하는 현상입니다. matplotlib 에서 font 를 변경하는 방법은 두 가지가 있습니다.

    • 첫 번째는 코드상에서 변경해주는 방법.

    • 두 번째는 matplotlib 의 환경설정 파일에서 font 를 변경하는 방법



1. 코드 상에서 변경하는 방법


import matplotlib.font_manager as fm

font_location = '폰트의 경로'  
                    # ex - 'C:/asiahead4.ttf'
font_name = fm.FontProperties(fname = font_location).get_name()
matplotlib.rc('font', family = font_name)


  • matplotlib 의 font_manager 에서 설정을 변경해주는 방법을 통해 한글 출력을 가능하게 할 수 있습니다.



2. matplotlib 환경설정 파일 변경 

  • 환경설정 파일의 위치는 matplotlib.matplotlib_fname() 명령어를 통해 알 수 있습니다.


  • 경로를 찾아 들어가서 matplotlibrc 파일을 메모장을 통해 열어보면

# 10 pt is the standard value.
#
#font.family         : sans-serif
#font.style          : normal
#font.variant        : normal
#font.weight         : medium
#font.stretch        : normal
# note that font.size controls default text sizes.  To configure

  • font.family 를 검색해서 sans-serif 를 가능한 font 로 변경해주면 됩니다.


해결 

  • 위의 방법들을 통하면 다음과 같이 이상없이 한글이 출력되는 것을 확인할 수 있습니다.




* 이 글은 https://ansuchan.com/matplotlib-with-korean/ 를 참고해서 작성하였습니다.







부족한 블로그에 방문해 주셔서 감사합니다.

잘못된 부분이나 질문이 있으시면 

댓글로 말씀해주세요.


금방 확인하고 피드백 드리겠습니다.


좋은 하루 되세요. ^^


반응형

'Python' 카테고리의 다른 글

[Python] 이중 for 문 break  (6) 2018.04.11
[Python] List, Dict 시간 복잡도 (Big O)  (0) 2018.03.21
[Python] random - 난수 추출하기  (0) 2018.02.19
[Python] dict max, min  (2) 2018.01.19
[Python] numpy 기본  (2) 2018.01.18
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함