Python-matplotlib制图10-设置坐标轴刻度的字体属性

前军夜战洮河北,已报生擒吐谷浑。——王昌龄


前言

  1. 概述

  • 学习基于matplotlib制图时,如何设置坐标轴刻图的字体属性。

  2. 版本

   2.1 山东青岛,2021年6月116日,Version 1

  3. 参考资料

[1]. matplotlib官方文档
[2]. Python绘图总结(Matplotlib篇)之坐标轴及刻度


一、坐标轴刻度字体类型设置

 1. matplotlib中的常见字体

  对于matplotlib中的常见字体,可以参考matplotlib 修改字体属性 (旋转,类型,粗细,颜色,大小)

 2. 字体设置示例

  • 此程序展示如何将坐标轴刻度的字体设置为新罗马,请关注程序的2.3 坐标轴刻度字体设置这一部分。
    • axes.get_xticklabels() , 获取坐标轴刻度对象
    • .set_fontname(),设置字体
  • 程序示例
'''
1. 程序目的
   (1) 修改坐标轴刻度的字体为新罗马字体

2. 山东青岛  2021年5月2日
'''

# 0. 包的导入
import numpy as np
import matplotlib.pyplot as plt

# 1. 创建制图数据
x = np.linspace(-2,2,100)

# 2. 绘图
  # 2.1 图形对象创建
fig,axes = plt.subplots(figsize=(5,5)) # 创建一个图形对象和一个子图对象
axes.plot(x,x**3,label='cubic',linestyle='--') # axes对象绘图

  # 2.2 axes对象添加图名称,坐标轴名称
axes.set_xlabel('x label')
axes.set_ylabel('y label')
axes.set_title('cubic line')
axes.legend() # 添加图例

  # 2.3 坐标轴刻度字体设置
x1_label = axes.get_xticklabels() 
[x1_label_temp.set_fontname('Times New Roman') for x1_label_temp in x1_label]
y1_label = axes.get_yticklabels() 
[y1_label_temp.set_fontname('Times New Roman') for y1_label_temp in y1_label]

plt.show()
  • 运行结果
    坐标轴字体刻度设置

二、坐标轴刻度字体颜色设置

 1. axes.tick_params方法设置坐标轴刻度的字体颜色

  • axes.tick_params方法是对坐标轴标签的设置,在进行字体颜色(labelcolor)设置的同时,可以设置坐标轴刻度标签的朝向(direction)、颜色(color)和坐标轴刻度字体的大小(labelsize=9)。请关注程序的2.4 坐标轴刻度字体颜色设置这一部分。

  • axes.tick_params()进行坐标轴标签属性设置时,需要通过axis='y’或者axis='x’指定要设置的坐标轴。

  • 程序示例

'''
1. 程序目的
   (1) 修改y坐标轴刻度的字体颜色为蓝色

2. 山东青岛  2021年5月2日
'''

# 0. 包的导入
import numpy as np
import matplotlib.pyplot as plt

# 1. 创建制图数据
x = np.linspace(-2,2,100)

# 2. 绘图
  # 2.1 图形对象创建
fig,axes = plt.subplots(figsize=(3,3),dpi=600) # 创建一个图形对象和一个子图对象
axes.plot(x,x**3,label='cubic',linestyle='--') # axes对象绘图

  # 2.2 axes对象添加图名称,坐标轴名称
axes.set_xlabel('x label')
axes.set_ylabel('y label')
axes.set_title('cubic line')
axes.legend() # 添加图例

  # 2.3 坐标轴刻度字体设置
x1_label = axes.get_xticklabels() 
[x1_label_temp.set_fontname('Times New Roman') for x1_label_temp in x1_label]
y1_label = axes.get_yticklabels() 
[y1_label_temp.set_fontname('Times New Roman') for y1_label_temp in y1_label]

  # 2.4 坐标轴刻度字体颜色设置
axes.tick_params(axis='y',
                 labelsize=9, # y轴字体大小设置
                 color='r',    # y轴标签颜色设置  
                 labelcolor='b', # y轴字体颜色设置
                 direction='in' # y轴标签方向设置
                  ) 
plt.show()
  • 运行结果
    坐标轴刻度字体颜色设置
  • 31
    点赞
  • 97
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

EWBA_GIS_RS_ER

如有帮助,赏杯茶吧。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值