欢迎来到代码驿站!

Python代码

当前位置:首页 > 软件编程 > Python代码

matplotlib之pyplot模块添加文本、注解(text和annotate)

时间:2022-11-06 09:22:53|栏目: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()

总结

上一篇:python中的netCDF4批量处理NC文件的操作方法

栏    目:Python代码

下一篇:没有了

本文标题:matplotlib之pyplot模块添加文本、注解(text和annotate)

本文地址:http://www.codeinn.net/misctech/218344.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有