W2251489 发表于 2020-8-11 23:55:29

matplotlib设置字体


为什么最后结果x轴只有一个字体变了
from matplotlib import pyplot as plt
import random
from matplotlib import font_manager #设置显示中文
my_font=font_manager.FontProperties(fname=r'C:\Windows\Fonts\方正粗黑宋简体.ttf',size='12')#设置字体
x=range(0,120)

y=
plt.figure(figsize=(40,20),dpi=80)
plt.plot(x,y)

_x=['10时{}分'.format(i) for i in range(60)]
_x+=['11时{}分'.format(i) for i in range(60)]
#plt.xticks(range(0,20,10))
plt.xticks(list(x)[::3],_x[::3],rotation=45,fontproperties=my_font)#rotation旋转度数

plt.xlabel('这里是X坐标',fontproperties=my_font)
plt.ylabel('这里是Y坐标',fontproperties=my_font)

plt.show()
plt.savefig('01.png')

W2251489 发表于 2020-8-11 23:57:42

{:10_269:}

Twilight6 发表于 2020-8-12 08:12:07


直接用 rcParams 设置字体比较方便些:

from matplotlib import pyplot as plt
import random


x=range(0,120)

y=
plt.figure(figsize=(40,20),dpi=80)
plt.plot(x,y)

# 设置中文字体
plt.rcParams['font.sans-serif'] = ['SIMHEI']

_x=['10时{}分'.format(i) for i in range(60)]
_x+=['11时{}分'.format(i) for i in range(60)]
#plt.xticks(range(0,20,10))
plt.xticks(list(x)[::3],_x[::3],rotation=45)#rotation旋转度数

plt.xlabel('这里是X坐标')
plt.ylabel('这里是Y坐标')

plt.show()
plt.savefig('01.png')

W2251489 发表于 2020-8-12 08:23:47

Twilight6 发表于 2020-8-12 08:12
直接用 rcParams 设置字体比较方便些:

这个我知道,但这是全局的,我想设置不同字体
页: [1]
查看完整版本: matplotlib设置字体