欢迎来到代码驿站!

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 代码驿站 版权所有