亲宝软件园·资讯

展开

matplotlib pyplot添加文本注解

mighty13 人气:0

概述

text函数作用是根据x,y坐标向图像添加文本。

annotate函数作用是根据x,y坐标向图像添加文本注解。

两者非常相似,但是又有一定差别。

text函数概述

text函数的签名为:matplotlib.pyplot.text(x, y, s, fontdict=None, **kwargs)

参数说明如下:

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。可选参数。

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

总结

加载全部内容

相关教程
猜你喜欢
用户评论