如何利用pyplot模块实现添加文本和注解

Admin 2022-09-05 群英技术资讯 544 次浏览

这篇文章将为大家详细讲解有关“如何利用pyplot模块实现添加文本和注解”的知识,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

 


概述

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()

总结


到此这篇关于“如何利用pyplot模块实现添加文本和注解”的文章就介绍到这了,更多相关如何利用pyplot模块实现添加文本和注解内容,欢迎关注群英网络技术资讯频道,小编将为大家输出更多高质量的实用文章! 群英智防CDN,智能加速解决方案
标签: pyplot模块

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

猜你喜欢

成为群英会员,开启智能安全云计算之旅

立即注册
专业资深工程师驻守
7X24小时快速响应
一站式无忧技术支持
免费备案服务
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
在线客服
微信公众号
返回顶部
返回顶部 返回顶部
在线客服
在线客服