week7-文本

Matplotlib 文字(Text)知识点

两种写法:pyplot 简易 API 和 面向对象 OO 写法(ax),推荐 OO 写法,适合多子图。

一、5 个核心文字函数

表格

函数 (plt) OO 写法 作用 坐标参考
plt.title() ax.set_title() 子图 Axes 标题 子图区域
plt.xlabel() ax.set_xlabel() X 轴标签 子图坐标轴
plt.ylabel() ax.set_ylabel() Y 轴标签 子图坐标轴
plt.text (x,y,"文字") ax.text (x,y,"文字") 在图内任意位置添加文字 数据坐标(x,y 是图表数值)
plt.annotate() ax.annotate() 带箭头标注文字 数据坐标,支持箭头
plt.suptitle() fig.suptitle() 整个画布 Figure 总标题 画布全局

二、通用文字参数(全部文字函数通用)

  • fontsize:字号,数字;也可用'large'/'x-small'
  • color:文字颜色
  • fontweight:bold粗体 / normal正常
  • ha 水平对齐:center居中、left左、right右
  • va 垂直对齐:top上、center中、bottom下
  • bbox:文字背景框,字典格式 bbox=dict(facecolor='yellow',alpha=0.5)

中文必加两行,否则方框乱码:

python 复制代码
import matplotlib.pyplot as plt
plt.rcParams["font.sans-serif"] = ["SimHei"]
plt.rcParams["axes.unicode_minus"] = False #负号正常显示

三、完整示例代码

python 复制代码
import matplotlib.pyplot as plt
import numpy as np

#解决中文乱码
plt.rcParams["font.sans-serif"] = ["SimHei"]
plt.rcParams["axes.unicode_minus"] = False

fig, ax = plt.subplots(figsize=(6,4))
x = np.array([1,2,3,4])
y = np.array([2,4,1,3])
ax.plot(x,y)

#1.子图标题
ax.set_title("子图标题", fontsize=14, color="blue", fontweight="bold")
#2.坐标轴标签
ax.set_xlabel("X轴", fontsize=12)
ax.set_ylabel("Y轴", fontsize=12)
#3.图内文字(数据坐标)
ax.text(2, 3.5, "普通文字", fontsize=11, bbox=dict(facecolor='#eeeeee'))
#4.带箭头标注
ax.annotate("最低点", xy=(3,1), xytext=(2.2,0.2),
            arrowprops=dict(arrowstyle="->",color="red"))
#5.画布总标题
fig.suptitle("画布总标题", fontsize=16)

plt.show()

四、高频考点

  1. ax.text(x,y,text):x,y 是数据坐标 ,不是画布百分比;fig.text()才是画布相对坐标 (0~1)
  2. suptitle是整张画布大标题 ,set_title只是单个子图标题,多子图时两者经常一起用
  3. annotate的xy是箭头指向点 ;xytext是文字所在位置
  4. bbox给文字加背景框,美化文字块

五、易混区分

  • fig.text(x,y,"text"):x,y∈0,1,画布相对坐标,不受坐标轴范围影响
  • ax.text(x,y,"text"):x,y 是图中数据坐标,会跟着 xlim/ylim 缩放
相关推荐
On The Road :1 小时前
Java 多线程详解:从入门到线程安全
java·python·安全
岁月宁静1 小时前
如何设计支持 Skills 的 Agent?一套可扩展的四层架构
python·agent
岁月宁静1 小时前
CrewAI 快速上手:10 分钟搭建你的第一个 Agent 团队
python·agent
曲径海盗2 小时前
【Python 学习第 40 天】for 循环
python·学习笔记·编程入门
专注仿真2 小时前
知识问答大模型-rag算法详解
人工智能·python·控制算法
染指11102 小时前
158.Agent-LangGraph-子图(共享状态和不共享状态模式)
开发语言·人工智能·python·ui·agent·agents
云和数据.ChenGuang4 小时前
Python 常见特殊方法详解:__new__、__init__、__del__、__str__、__repr__ 与 __getattribute__
开发语言·人工智能·python·1024程序员节
xyouyuweizhu4 小时前
字节流与字符流:Java IO 的两条主线该怎么选
java·开发语言·python
迪菲赫尔曼4 小时前
【基础篇 04】第一次使用终端:命令在哪里输入,电脑现在又“站”在哪里?
python·yolo·目标检测
qianbo_insist5 小时前
# 在 Qwen3.5-2B 上把 GDN-1 无损换成 GDN-2:一次完整的架构手术实验(负结果)
人工智能·pytorch·python·架构