鱼C论坛

 找回密码
 立即注册
查看: 1624|回复: 3

matplotlib设置字体

[复制链接]
发表于 2020-8-11 23:55:29 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x

为什么最后结果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=[random.randint(25,40) for i in range(0,120)]
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')

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2020-8-11 23:57:42
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com

发表于 2020-8-12 08:12:07 | 显示全部楼层

直接用 rcParams 设置字体比较方便些:
from matplotlib import pyplot as plt
import random


x=range(0,120)

y=[random.randint(25,40) for i in range(0,120)]
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')
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-8-12 08:23:47 | 显示全部楼层
Twilight6 发表于 2020-8-12 08:12
直接用 rcParams 设置字体比较方便些:

这个我知道,但这是全局的,我想设置不同字体
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-19 11:35

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表