【Python】matplotlib를 일본어화한다

matplotlib에서 일본어를 사용하려고하면 기본값으로는 ​​깨져버립니다.
거기서 문자화되지 않게 하기 위한 설정을 소개합니다.

어려움



Jupyter Notebook에서 다음과 같은 작업을 수행할 때
그래프의 레이블이 잘 표시되지 않습니다.
from numpy.random import *
from matplotlib import pyplot as plt
%matplotlib inline

# 乱数生成
rand_nums = randn(100)

# ヒストグラム表示
plt.hist(rand_nums)
plt.xlabel("X軸と表示したい")
plt.ylabel("Y軸と表示したい")

실행 결과


환경



MacOS, Python 3.6(Anaconda), Jupyter Notebook이 설치된 환경.

준비



다음 사이트에서 IPAexGothic 글꼴을 다운로드하여 matplotlib에서 사용할 수 있습니다.
htps : // 이파후 t. 가득. . jp/ 때문에 17
※이하 참고까지 커맨드를 쓰고 있습니다만, Finder등 사용해도 됩니다.
※또, 폰트는 이 기사의 집필시의 최신인 ipaexg00301로 움직이고 있습니다만, ipaexg00401등, 다른 버젼에서도 큰 차이가 없다고 생각합니다.
  • ipaexg00301.zip을 다운로드합니다.

  • 다운로드 한 zip 파일을 확장하고 내부의 ipaexg.ttf
    ~/anaconda3/lib/python3.6/site-packages/matplotlib/mpl-data/fonts/ttf
    에 배치한다.
    unzip ~/Downloads/ipaexg00301.zip
    mv ~/Downloads/ipaexg00301/ipaexg.ttf ~/anaconda3/lib/python3.6/site-packages/matplotlib/mpl-data/fonts/ttf
    
  • ~/.matplotlib에서 fontList.py3k.cache를 삭제한다.
    (또한 여기에서 Jupyter를 시작한 경우 다시 시작하십시오.)
  • rm -f ~/.matplotlib/fontList.py3k.cache 
    

    방법① 런타임에 설정



    이전의 처리에 한 줄 추가한다.
    from numpy.random import *
    from matplotlib import pyplot as plt
    %matplotlib inline
    
    # 乱数生成
    rand_nums = randn(100)
    
    # 追加部分 フォントを指定する。
    plt.rcParams["font.family"] = "IPAexGothic"
    
    # ヒストグラム表示
    plt.hist(rand_nums)
    plt.xlabel("X軸と表示したい")
    plt.ylabel("Y軸と表示したい")
    

    실행 결과


    다만, 이 경우에는 파일을 작성할 때마다 기술할 필요가 있으므로,
    다음에 소개하는 방법이 범용적이라고 생각합니다.

    방법② 설정 파일을 수정한다



    ~/anaconda3/lib/python3.6/site-packages/matplotlib/mpl-data/matplotlibrc의 설명을 수정합니다.
    vi ~/anaconda3/lib/python3.6/site-packages/matplotlib/mpl-data/matplotlibrc
    

    196행째 근처에 font.family의 기술이 있기 때문에
    다음과 같이 sans-serif 행을 주석 처리하고 IPAexGothic 행을 추가합니다.
    #font.family         : sans-serif
    font.family         : IPAexGothic
    

    Jupyter를 다시 시작하고 첫 번째 작업을 수행합니다.

    실행 결과


    요약



    일본어를 사용할 가능성이 있다면, 우선 ②의 방법으로 일본어화해 두면 좋은 것이 아닐까요.

    좋은 웹페이지 즐겨찾기