【matplotlib】画图怎样将中文为宋体-英文为新罗马字体

网上介绍了一些常用的方法,捣鼓了好久,但是都没有成功。终于,找到了一种方法可以解决这个问题。
参考链接:https://zhuanlan.zhihu.com/p/118601703,感谢大佬的文章!膜拜~

import matplotlib
import matplotlib.pyplot as plt
from matplotlib import rcParams

matplotlib.use("pgf")
pgf_config = {
    
    
    "font.family":'serif',
    "font.size": 7.5,
    "pgf.rcfonts": False,
    "text.usetex": True,
    "pgf.preamble": [
        r"\usepackage{unicode-math}",
        r"\setmainfont{Times New Roman}",
        r"\usepackage{xeCJK}",
        r"\setCJKmainfont{SimSun}",
    ],
}
rcParams.update(pgf_config)

x = [1,2,3,4,5]
y = x

plt.figure()
# 坐标轴的刻度设置向内(in)或向外(out)
plt.rcParams['xtick.direction'] = 'in'
plt.rcParams['ytick.direction'] = 'in'
# 画图
plt.plot(x, y, '-o')
# 设置背景网格线为虚线
plt.grid(linestyle="--") 
# 设置坐标轴标签                  
plt.xlabel("时间/s",fontsize=7.5)
plt.ylabel("角度/(°)",fontsize=7.5)
# 显示图像
plt.savefig('./图6-b.png',dpi=600)

在这里插入图片描述

注意事项:

  1. 初次运行代码会安装一个类似于插件的东西,具体是什么,没注意看,直接安装了。
  2. 文件似乎只能保存成png格式,尝试jpg格式未成功。

猜你喜欢

转载自blog.csdn.net/qq_41821678/article/details/105804345