当前位置:   article > 正文

Matplotlib画图LaTeX更改图中的坐标字体以及上下标_plt latex字体

plt latex字体

出图

导入包并且设置文字格式,要求是中文为黑体,英文字体改成和Times New Roman相似的stix

  1. import matplotlib.pyplot as plt
  2. from matplotlib import rcParams
  3. # 画图字体的修改
  4. config = {
  5. "font.family":'serif',
  6. "font.size": 12,
  7. "mathtext.fontset":'stix',
  8. "font.serif": ['SimSun'],
  9. }
  10. rcParams.update(config)
  11. plt.rcParams["font.sans-serif"] = ["SimHei"]

首先是图中各项指标,在输出的时候就转化为LaTeX字符格式,后续输出的时候直接就是宋体格式

  1. # 先求出数据指标 并进行文本文字编辑
  2. r2 = r'$\mathrm{R^2='+str(r2_score(Y_pred,Y).round(k))+'}$'
  3. mse = r'$\mathrm{MSE='+str(mean_squared_error(Y_pred,Y).round(k))+'}$'
  4. pre = r'$\mathrm{PRE='+str("%.2f" % PRE(Y_pred,Y))+'}$'+'%'
  5. N = r'$\mathrm{N='+str(len(Y))+'}$'

 画图设置横纵坐标文字格式以及标题格式,上标是 ^ 下标是 _,需要注意采用mathrm输出的文字需要用{}括起来,采用_^标记的上下标也要括起来格式基本上为,因为中文不需要设置的stix格式,因此直接输出在mathrm外面

$\mathrm{xxxxx}$xxxx
  1. # 画图
  2. fig,ax = plt.subplots()
  3. ax.set_xlabel(r'$\mathrm{PM_{2.5}}$真实值/'+'$\mathrm{(μg·m^{-3})}$')
  4. ax.set_ylabel(r'$\mathrm{PM_{2.5}}$预测值/'+'$\mathrm{(μg·m^{-3})}$')
  5. ax.set_title(r'$\mathrm{'+str(model)+'}$')

 这里设置文本的位置需要不断调试

  1. # 设置文本
  2. fig.text(.16,.85,func,horizontalalignment='left',verticalalignment='top')
  3. fig.text(.16,.80,r2,horizontalalignment='left',verticalalignment='top')
  4. fig.text(.16,.75,mse,horizontalalignment='left',verticalalignment='top')
  5. fig.text(.16,.70,pre,horizontalalignment='left',verticalalignment='top')
  6. fig.text(.16,.65,N,horizontalalignment='left',verticalalignment='top')

显示图像

  1. # 显示图像
  2. plt.show()

 完成!

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/238264?site
推荐阅读
相关标签
  

闽ICP备14008679号