matplotlib图例、标签、坐标轴刻度的字体设置方式

 更新时间:2023年05月30日 15:12:37   作者:htfenght  
这篇文章主要介绍了matplotlib图例、标签、坐标轴刻度的字体设置方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

matplotlib图例、标签、坐标轴刻度的字体设置

把字体都设置成为“Times New Roman”

plt.figure(figsize=[15,8])
plt.scatter(X, Y, label = 'RealValue')
plt.plot(X, func(X, a, b), 'red', label = 'CurveLine')
plt.title(station, fontdict={'family' : 'Times New Roman', 'size'   : 16})
plt.ylabel('Clocks($\mu S$)', fontdict={'family' : 'Times New Roman', 'size'   : 16})
plt.xlabel('Time', fontdict={'family' : 'Times New Roman', 'size'   : 16})
plt.yticks(fontproperties = 'Times New Roman', size = 14)
plt.xticks(fontproperties = 'Times New Roman', size = 14)
plt.legend(prop={'family' : 'Times New Roman', 'size'   : 16})
plt.savefig('./stationClocks/' + station + '.ps', dpi = 200)
plt.show()

在matplotlib使用中文坐标轴,设置坐标轴,标题字体及字体大小

1.matplotlib的坐标轴中一般是不支持中文

在windows中要使用中文坐标轴的话,需要调用电脑中的字体。

实现代码:

from matplotlib import font_manager#导入字体管理模块
my_font = font_manager.FontProperties(fname="C:/WINDOWS/Fonts/STSONG.TTF")
#定义中文字体属性,文字储存路径可以在C:/WINDOWS/Fonts/找到,这里我设置的宋体
plt.xlabel("时间",fontproperties = my_font,fontsize = 18)
#在设置x坐标中文标注,令fontproperties = my_font,fontsize令字体为18号
#plt.title,plt.ylabel,plt.xticks,plt.yticks设置中文标注类似

完整代码实例如下:

from matplotlib import pyplot as plt#导入matplotlib
from matplotlib import font_manager#导入字体管理模块
import random#导入随机生成模块
my_font = font_manager.FontProperties(fname="C:/WINDOWS/Fonts/STSONG.TTF")
#定义中文字体属性,文字储存路径可以在C:/WINDOWS/Fonts/找到,这里我设置的宋体
y = [random.randint(20,35) for i in range(120)]#y值为120个在20-35之间随机数
x = range(0,120)#x值为0-120
plt.figure(figsize=(15,10),dpi=90)#图片大小为15*10,每英寸90个像素点
_x_labels = ["10点{}分".format(i) for i in range(60)]
_x_labels += ["11点{}分".format(i) for i in range(60)]#设置x坐标轴中文刻度
plt.xticks(list(x[::3]),_x_labels[::3],rotation=45,fontproperties=my_font,fontsize = 12)#坐标轴刻度显示步长为3,为了避免坐标轴字体重叠,旋转45度,fontproperties设置字体
plt.plot(x,y)
plt.xlabel("时间",fontproperties = my_font,fontsize = 18)#设置x坐标标注,字体为18号
plt.ylabel("每分钟对应的温度",fontproperties = my_font,fontsize = 18)#设置y坐标标注
plt.title("10点到12点每分钟温度变化图",fontproperties = my_font,fontsize = 24)#设置标题
plt.plot(x,y)#绘图
plt.show()#显示

图片结果如图所示:

2.绘制两条折线及添加图例,添加网格

from matplotlib import pyplot as plt
from matplotlib import font_manager
import random
plt.figure(figsize=(10,8),dpi=80)
my_font = font_manager.FontProperties(fname="C:/WINDOWS/Fonts/STSONG.TTF")
x = range(11,31)
y_1 = [random.randint(0,5) for i in range(20)]
y_2 = [random.randint(0,5) for i in range(20)]
_x_label = ["{}岁".format(i) for i in range(11,31)]
plt.xticks(list(x[::2]),_x_label[::2],rotation = 45,fontproperties = my_font,fontsize = 12)
plt.plot(x,y_1,label = "自己",color="red")
plt.plot(x,y_2,label= "朋友",linestyle="--",linewidth=2,alpha = 0.4)
plt.xlabel("年龄",fontproperties = my_font,fontsize = 18)
plt.ylabel("每年交的朋友",fontproperties = my_font,fontsize = 18)
plt.title("11岁到30岁每年交的朋友变化图",fontproperties = my_font,fontsize = 24)
plt.grid(alpha = 0.4)#添加网格,alpha = 0.4透明度
plt.legend(prop=my_font,loc='best')#添加图例
plt.show()

图片结果如图所示:

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 解决pandas使用read_csv()读取文件遇到的问题

    解决pandas使用read_csv()读取文件遇到的问题

    今天小编就为大家分享一篇解决pandas使用read_csv()读取文件遇到的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06
  • Python中Playwright模块进行自动化测试的实现

    Python中Playwright模块进行自动化测试的实现

    playwright是由微软开发的Web UI自动化测试工具,本文主要介绍了Python中Playwright模块进行自动化测试的实现,具有一定的参考价值,感兴趣的可以了解一下
    2023-12-12
  • python中dump与dumps实现序列化

    python中dump与dumps实现序列化

    这篇文章就来介绍python中dump与dumps实现序列化,文章将围绕dump与dumps实现序列化展开内容且简精,需要的朋友可以参考一下,希望对你有所帮助
    2021-10-10
  • python实现beta分布概率密度函数的方法

    python实现beta分布概率密度函数的方法

    今天小编就为大家分享一篇python实现beta分布概率密度函数的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-07-07
  • 对python产生随机的二维数组实例详解

    对python产生随机的二维数组实例详解

    今天小编就为大家分享一篇对python产生随机的二维数组实例详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • python模块详解之pywin32使用文档(python操作windowsAPI)

    python模块详解之pywin32使用文档(python操作windowsAPI)

    pywin32是一个第三方模块库,主要的作用是方便python开发者快速调用windows API的一个模块库,这篇文章主要给大家介绍了关于python模块详解之pywin32使用文档的相关资料,文中将python操作windowsAPI介绍的非常详细,需要的朋友可以参考下
    2024-01-01
  • python Pandas时序数据处理

    python Pandas时序数据处理

    这篇文章主要介绍了python Pandas时序数据处理,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-06-06
  • 使用 pytorch 创建神经网络拟合sin函数的实现

    使用 pytorch 创建神经网络拟合sin函数的实现

    这篇文章主要介绍了使用 pytorch 创建神经网络拟合sin函数的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02
  • Pyqt5 实现跳转界面并关闭当前界面的方法

    Pyqt5 实现跳转界面并关闭当前界面的方法

    今天小编就为大家分享一篇Pyqt5 实现跳转界面并关闭当前界面的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-06-06
  • Python NumPy随机抽模块介绍及方法

    Python NumPy随机抽模块介绍及方法

    这篇文章主要介绍了Python NumPy随机抽模块介绍及方法,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的朋友可以参考一下
    2022-09-09

最新评论