当前有效matplotlib版本为:3.4.1。
概述
arrow()函数的作用是向子图中添加箭头。
函数的签名为matplotlib.pyplot.arrow(x, y, dx, dy, **kwargs)。
函数的参数为:
x, y:箭头尾部的坐标。类型为浮点数。必备参数。dx, dy:箭头在xy方向的长度。类型为浮点数。必备参数。width:箭头尾部的宽度。类型为浮点数,默认值为0.001。head_width:完全箭头头部的宽度。类型为浮点数或None,默认值为3*width。head_length:完全箭头头部的长度。类型为浮点数或None,默认值为1.5*head_width。length_includes_head:长度是否包含箭头。类型为布尔值,默认值为False。shape:箭头的形状,分为全箭头、左半箭头和右半箭头。取值范围为{'full', 'left', 'right'},默认值为'full'。overhang:箭头头部尾角的倾斜系数(小数)。类型为浮点数,值可为负值或大于1,默认值为0,即箭头头部为三角形。head_starts_at_zero:箭头头部的起始位置。类型为布尔值,默认值为False。当值为True时,箭头头部从0坐标开始绘制,当值为False时,箭头尾部从0坐标开始绘制。**kwargs:Patch对象属性。
返回值为FancyArrow对象。
案例:演示arrow()函数
import matplotlib.pyplot as plt
fig,axes=plt.subplots(3,4)
# 默认样式
axes[0,0].arrow(0,0,1,1)
# 设置箭头尾部、头部宽度
axes[0,1].arrow(0,0,1,1,width=0.2,head_width=0.5)
# 设置箭头尾部、头部宽度、箭头头部长度
axes[0,2].arrow(0,0,1,1,width=0.2,head_width=0.5,head_length=0.2)
# 设置箭头尾部、头部宽度、箭头头部长度、长度是否包含箭头头部
axes[0,3].arrow(0,0,1,1,width=0.2,head_width=0.5,head_length=0.2,length_includes_head=True)
# 默认样式
axes[1,0].arrow(0,0,1,1,width=0.2)
# 全箭头
axes[1,1].arrow(0,0,1,1,width=0.2,shape='full')
# 右半箭头
axes[1,2].arrow(0,0,1,1,width=0.2,shape='left')
# 左半箭头
axes[1,3].arrow(0,0,1,1,width=0.2,shape='right')
# 默认样式
axes[2,0].arrow(0,0,1,1,width=0.2)
# 设置箭头尾部倾斜角度
axes[2,1].arrow(0,0,1,1,width=0.2,overhang=0.2)
# 默认样式
axes[2,2].arrow(0,0,1,1,width=0.2)
# 设置箭头起始方式
axes[2,3].arrow(0,0,1,1,width=0.2,head_starts_at_zero=True)
plt.show()

源码
matplotlib.axes模块
def arrow(self, x, y, dx, dy, **kwargs):
# Strip away units for the underlying patch since units
# do not make sense to most patch-like code
x = self.convert_xunits(x)
y = self.convert_yunits(y)
dx = self.convert_xunits(dx)
dy = self.convert_yunits(dy)
a = mpatches.FancyArrow(x, y, dx, dy, **kwargs)
self.add_patch(a)
self._request_autoscale_view()
return a
本文详细介绍了Matplotlib库中的arrow()函数,用于在图表中添加箭头,包括箭头尾部坐标、长度、宽度、头部样式等参数的设置,并通过实例展示了各种箭头配置选项。
775

被折叠的 条评论
为什么被折叠?



