[python] matplotlib (python)에서 글꼴을 변경하는 방법은 무엇입니까?

쉬운 문제로 들리지만 파이썬에서 matplotlib로 만든 플롯에서 글꼴 (글꼴 크기가 아님)을 변경하는 효과적인 해결책을 찾지 못했습니다.

matplotlib가 기본 글꼴을 저장하는 폴더의 일부 파일을 수정하여 matplotlib의 기본 글꼴을 변경하는 몇 가지 자습서를 찾았습니다. 이 블로그 게시물을 참조하십시오. 하지만 둘 이상을 사용하고 싶기 때문에 덜 급진적 인 솔루션을 찾고 있습니다 내 플롯의 글꼴 ​​(텍스트, 레이블, 축 레이블 등).



답변

제목에는 Comic Sans를, x 레이블에는 Helvetica를 원한다고 가정 해 보겠습니다.

csfont = {'fontname':'Comic Sans MS'}
hfont = {'fontname':'Helvetica'}

plt.title('title',**csfont)
plt.xlabel('xlabel', **hfont)
plt.show()


답변

를 사용 rcParams하여 글꼴 모음을 전역으로 변경할 수도 있습니다 .

 import matplotlib.pyplot as plt
 plt.rcParams["font.family"] = "cursive"
 # This will change to your computer's default cursive font

matplotlib의 글꼴 패밀리 인수 목록은 여기에 있습니다 .


답변

다음을 선호합니다.

from matplotlib import rc
#rc('font',**{'family':'sans-serif','sans-serif':['Helvetica']})
rc('font',**{'family':'serif','serif':['Times']})
rc('text', usetex=True)


답변

import pylab as plb
plb.rcParams['font.size'] = 12

또는

import matplotlib.pyplot as mpl
mpl.rcParams['font.size'] = 12


답변

Helvetica 글꼴은 Windows에 포함되어 있지 않으므로 사용하려면 .ttf 파일로 다운로드해야합니다. 그런 다음 다음과 같이 matplotlib를 참조 할 수 있습니다 ( “crm10.ttf”를 파일로 대체).

import os
from matplotlib import font_manager as fm, rcParams
import matplotlib.pyplot as plt

fig, ax = plt.subplots()

fpath = os.path.join(rcParams["datapath"], "fonts/ttf/cmr10.ttf")
prop = fm.FontProperties(fname=fpath)
fname = os.path.split(fpath)[1]
ax.set_title('This is a special font: {}'.format(fname), fontproperties=prop)
ax.set_xlabel('This is the default font')

plt.show()

print(fpath) .ttf를 어디에 넣어야하는지 보여줄 것입니다.

여기에서 출력을 볼 수 있습니다 :
https://matplotlib.org/gallery/api/font_file.html


답변