matplotlib之pyplot模块——添加⽂本、注解(text、annotate)概述
text函数作⽤是根据x,y坐标向图像添加⽂本。
annotate函数作⽤是根据x,y坐标向图像添加⽂本注解。
两者⾮常相似,但是⼜有⼀定差别。
text函数概述
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函数的返回值为Annotation对象。
text函数和annotate函数的对⽐
根据下⾯的⽰例可知:
text函数可在指定坐标点绘制⽂本。
annotate函数如果只使⽤text和xy参数,那么功能与text函数类似。
但是annotate函数可以独⽴设置注解⽂本的位置,还可以添加需要注解的数据坐标与注解⽂本之间的箭头。
import matplotlib.pyplot as plt
plt.xlim(0,5)
text函数什么意思plt.ylim(0,5)
# 绘制3个坐标点
plt.plot((3,3,3),(1,2,3),'o')
# 使⽤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()

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。