您现在的位置是:网站首页> 编程资料编程资料
matplotlib之pyplot模块添加文本、注解(text和annotate)_python_
2023-05-26
380人已围观
简介 matplotlib之pyplot模块添加文本、注解(text和annotate)_python_
概述
text函数作用是根据x,y坐标向图像添加文本。
annotate函数作用是根据x,y坐标向图像添加文本注解。
两者非常相似,但是又有一定差别。
text函数概述
text函数的签名为:matplotlib.pyplot.text(x, y, s, fontdict=None, **kwargs)
参数说明如下:
- x,y:放置文本的坐标。浮点数。必备参数。
- s:文本。字符串。必备参数。
- fontdict:字体属性字典,用于覆盖默认文本的字体属性。字典。默认值为None,应用rcParams中的字体属性。可选参数。
- **kwargs:Text对象的相关属性。
text函数的返回值为Text对象。
annotate函数概述
annotate函数的签名为:matplotlib.pyplot.annotate(text, xy, *args, **kwargs))
参数说明如下:
text:注解文本。字符串。必备参数。
xy:需要注解的坐标,使用xycoords参数确定的坐标系。浮点数元组。必备参数。
xycoords:设置xy参数所使用的坐标系。字符串、Artist Transform 、可调用对象、 (float, float)。默认值为'data',即被注解对象的坐标系。可选参数。
| 值 | 说明 |
|---|---|
| ‘figure points’ | 相对于图像左下角的点数(points) |
| ‘figure pixels’ | 相对于图像左下角的像素数(pixels) |
| ‘figure fraction’ | 相对于图像左下角的比例((0, 0) 为图像左下角 (1, 1) 为右上角) |
| ‘axes points’ | 相对于子图左下角的点数(points) |
| ‘axes pixels’ | 相对于子图左下角的像素数(pixels) |
| ‘axes fraction’ | 相对于子图左下角的比例 |
| ‘data’ | 默认值,使用被注解对象的坐标系 |
| ‘polar’ | (theta, r) |
xytext:放置注解文本的坐标。浮点数元组。默认值为xy。必备参数。
textcoords:设置xytext所使用的的坐标系。字符串、Artist Transform 、可调用对象、 (float, float)。默认值为xycoords参数。
| 值 | 说明 |
|---|---|
| ‘offset points’ | xy参数值的偏移量,单位为点(points) |
| ‘offset pixels’ | xy参数值的偏移量,单位为像素(pixels) |
annotation_clip:当注解超出子图区域后是否绘制。布尔值或None。默认值为None。可选参数。
- True:只有当xy坐标位于子图之内才绘制注解。
- False:不检测xy坐标位置,一直绘制注解。
- None:只有当xy坐标位于子图之内才绘制注解,且xycoords 参数值为'data'。
**kwargs:Text对象的相关属性。
arrowprops:被注解坐标点xy与注解文本位置xytext之间的箭头属性。字典, FancyArrowPatch对象属性。默认值为None,即不绘制箭头。可选参数。
FancyArrowPatch相关属性如下:
text函数和annotate函数的对比
根据下面的示例可知:
text函数可在指定坐标点绘制文本。
annotate函数如果只使用text和xy参数,那么功能与text函数类似。
但是annotate函数可以独立设置注解文本的位置,还可以添加需要注解的数据坐标与注解文本之间的箭头。

import matplotlib.pyplot as plt plt.xlim(0,5) plt.ylim(0,5) # 绘制3个坐标点 plt.plot((3,3,3),(1,2,3),'o') # 使用text函数设置文本 plt.text(3,1,'text') # 使用annotate函数必备参数绘制注解 plt.annotate('annotate', xy=(3, 2)) # 使用annotate函数绘制注解,添加指示箭头 plt.annotate('annotate', xy=(3, 3), xytext=(4,3), arrowprops=dict(arrowstyle='->',facecolor='black') ) plt.show() 总结
到此这篇关于matplotlib之pyplot模块添加文本、注解(text和annotate)的文章就介绍到这了,更多相关matplotlib pyplot模块添加文本注解内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
相关内容
- pyscript的简单应用实现_python_
- Python使用 TCP协议实现智能聊天机器人功能_python_
- Python列表1~n输出步长为3的分组实例_python_
- Python使用struct库的用法小结_python_
- python np.arange 步长0.1的问题需要特别注意_python_
- 一个Python优雅的数据分块方法详解_python_
- python目标检测YoloV4当中的Mosaic数据增强方法_python_
- Python零钱兑换的实现代码_python_
- 基于np.arange与np.linspace细微区别(数据溢出问题)_python_
- Python远程SSH库Paramiko详细操作_python_
