Python Matplotlib如何修改图例字体

因为投稿要求,图片中的中文必须是某特定字体,在PLT中只修改题目等字体比较简单,但涉及到图例的字体就改不了了,试了很多种方法,最后终于成功了,记录一下

(1)单纯修改题目以及横纵坐标比较简单:

import matplotlib.font_manager
import matplotlib.pyplot as plt
import numpy as np

myfont = matplotlib.font_manager.FontProperties(fname=r'D:xx.ttf')

plt.rcParams['axes.unicode_minus']=False

括号里的D:...是我下载字体的存储位置,字体是ttf格式,属性或者文件地址栏就有。

然后代码中每个需要改变字体的地方都加一句fontproperties=myfont,例如:

plt.xlabel("x轴代表xx",fontproperties=myfont)
plt.ylabel("y轴代表xx",fontproperties=myfont)
plt.title("题目",fontproperties=myfont)

(2)带有label的图片

label示例的字体(就是每个颜色对应的是什么意思,这个示意图里的字体很难修改)无法通过这个方法改变字体,会报错:UserWarning: Glyph 26031 (\N{CJK UNIFIED IDEOGRAPH-65AF}) missing from current font.

要改变的字体会变成小方块(无法正常显示),这里只需要加上

plt.legend(prop=myfont)

即可成功修改。

你可能感兴趣的:(python,matplotlib)