📅  最后修改于: 2023-12-03 15:19:24.998000             🧑  作者: Mango
在Python中的 Matplotlib.pyplot.annotate()函数可以为图表中的特定位置添加注释或文本。本文将介绍该函数的用法和示例。
matplotlib.pyplot.annotate(text, xy, xytext=None, arrowprops=None, **kwargs)
参数说明:
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
x = [1, 2, 3, 4, 5]
y = [10, 8, 6, 4, 2]
ax.plot(x, y)
ax.annotate('Minimum', xy=(5, 2), xytext=(4.2, 7),
arrowprops=dict(facecolor='black', shrink=0.1))
plt.show()
输出结果如下图所示:
在代码中,先创建了一个图表对象和一个子图对象,然后绘制了一条折线图。然后通过annotate()函数添加了注释,注释文本为‘Minimum’,注释点的坐标为(5, 2),注释文本所在点的坐标为(4.2, 7)。
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
x = [1, 2, 3, 4, 5]
y = [10, 8, 6, 4, 2]
ax.plot(x, y)
ax.annotate('Minimum', xy=(5, 2), xytext=(4.2, 7),
arrowprops=dict(facecolor='red', arrowstyle='wedge,tail_width=0.7',
alpha=0.5, connectionstyle="angle3,angleA=0,angleB=-90"))
plt.show()
输出结果如下图所示:
使用arrowprops参数可以控制箭头的样式,可以使用字典类型来指定箭头的属性,比如颜色、风格、透明度以及连接样式等。在该例子中,箭头的颜色为红色,风格为‘wedge,tail_width=0.7’,透明度为0.5,连接样式为‘angle3,angleA=0,angleB=-90’。
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
x = [1, 2, 3, 4, 5]
y = [10, 8, 6, 4, 2]
ax.plot(x, y)
ax.annotate('Minimum', xy=(5, 2), xytext=(4.2, 7),
arrowprops=dict(facecolor='red', arrowstyle='wedge,tail_width=0.7',
alpha=0.5, connectionstyle="angle3,angleA=0,angleB=-90"),
fontsize=12, color='blue', textcoords='offset points', xytext=(40, -15))
plt.show()
输出结果如下图所示:
可以通过kwargs参数来控制注释文本的样式,如字体大小、颜色、偏移量等。在该例子中,字体大小为12,颜色为蓝色,偏移量为(40, -15)。
Matplotlib.pyplot.annotate()函数可以为图表中的特定位置添加注释或文本,并且可以控制箭头和注释文本的样式,可以让图表变得更加直观和清晰。