matplotlib.patches.ArrowStyle#

class matplotlib.patches.ArrowStyle(stylename, **kwargs)[source]#

基类: _Style

ArrowStyle 是一个容器类,它定义了多个箭头样式类,用于沿着给定路径创建箭头路径。这些主要用于 FancyArrowPatch

箭头样式对象可以通过以下方式创建:

ArrowStyle.Fancy(head_length=.4, head_width=.4, tail_width=.4)

ArrowStyle("Fancy", head_length=.4, head_width=.4, tail_width=.4)

ArrowStyle("Fancy, head_length=.4, head_width=.4, tail_width=.4")

定义了以下类:

名称

参数

Curve

-

None

CurveA

<-

head_length=0.4, head_width=0.2, widthA=1.0, widthB=1.0, lengthA=0.2, lengthB=0.2, angleA=0, angleB=0, scaleA=None, scaleB=None

CurveB

->

head_length=0.4, head_width=0.2, widthA=1.0, widthB=1.0, lengthA=0.2, lengthB=0.2, angleA=0, angleB=0, scaleA=None, scaleB=None

CurveAB

<->

head_length=0.4, head_width=0.2, widthA=1.0, widthB=1.0, lengthA=0.2, lengthB=0.2, angleA=0, angleB=0, scaleA=None, scaleB=None

CurveFilledA

<|-

head_length=0.4, head_width=0.2, widthA=1.0, widthB=1.0, lengthA=0.2, lengthB=0.2, angleA=0, angleB=0, scaleA=None, scaleB=None

CurveFilledB

-|>

head_length=0.4, head_width=0.2, widthA=1.0, widthB=1.0, lengthA=0.2, lengthB=0.2, angleA=0, angleB=0, scaleA=None, scaleB=None

CurveFilledAB

<|-|>

head_length=0.4, head_width=0.2, widthA=1.0, widthB=1.0, lengthA=0.2, lengthB=0.2, angleA=0, angleB=0, scaleA=None, scaleB=None

BracketA

]-

widthA=1.0, lengthA=0.2, angleA=0

BracketB

-[

widthB=1.0, lengthB=0.2, angleB=0

BracketAB

]-[

widthA=1.0, lengthA=0.2, angleA=0, widthB=1.0, lengthB=0.2, angleB=0

BarAB

|-|

widthA=1.0, angleA=0, widthB=1.0, angleB=0

BracketCurve

]->

widthA=1.0, lengthA=0.2, angleA=None

CurveBracket

<-[

widthB=1.0, lengthB=0.2, angleB=None

Simple

simple

head_length=0.5, head_width=0.5, tail_width=0.2

Fancy

fancy

head_length=0.4, head_width=0.4, tail_width=0.4

Wedge

wedge

tail_width=0.3, shrink_factor=0.5

有关视觉外观的概述,请参见 标注箭头样式参考

任何箭头样式类的实例都是一个可调用对象,其调用签名为:

__call__(self, path, mutation_size, linewidth, aspect_ratio=1.)

它返回一个 Path 实例和一个布尔值的元组。path 是一个 Path 实例,箭头的绘制将沿其进行。mutation_sizeaspect_ratio 的含义与 BoxStyle 中的相同。linewidth 是要描边的线宽。这旨在用于校正箭头的位置,使其不会超出目标点,但并非所有类都支持此功能。

备注

angleAangleB 指定括号的方向,可以是顺时针或逆时针角度,具体取决于箭头类型。0 度表示垂直于连接箭头头部和尾部的直线。

(源代码, 2x.png, png)

返回具有给定样式名称的子类实例。

class BarAB(widthA=1.0, angleA=0, widthB=1.0, angleB=0)[source]#

基类: _Curve

一个两端带有竖线 | 的箭头。

参数:
widthA, widthBfloat, 默认值: 1.0

括号的宽度。

angleA, angleBfloat, 默认值: 0 度

括号的方向,以逆时针角度表示。0 度表示垂直于直线。

arrow = '|-|'#
class BracketA(widthA=1.0, lengthA=0.2, angleA=0)[source]#

基类: _Curve

一个在其起点处带有外向方括号的箭头。

参数:
widthAfloat, 默认值: 1.0

括号的宽度。

lengthAfloat, 默认值: 0.2

括号的长度。

angleAfloat, 默认值: 0 度

括号的方向,以逆时针角度表示。0 度表示垂直于直线。

arrow = ']-'#
class BracketAB(widthA=1.0, lengthA=0.2, angleA=0, widthB=1.0, lengthB=0.2, angleB=0)[source]#

基类: _Curve

一个两端带有外向方括号的箭头。

参数:
widthA, widthBfloat, 默认值: 1.0

括号的宽度。

lengthA, lengthBfloat, 默认值: 0.2

括号的长度。

angleA, angleBfloat, 默认值: 0 度

括号的方向,以逆时针角度表示。0 度表示垂直于直线。

arrow = ']-['#
class BracketB(widthB=1.0, lengthB=0.2, angleB=0)[source]#

基类: _Curve

一个在其终点处带有外向方括号的箭头。

参数:
widthBfloat, 默认值: 1.0

括号的宽度。

lengthBfloat, 默认值: 0.2

括号的长度。

angleBfloat, 默认值: 0 度

括号的方向,以逆时针角度表示。0 度表示垂直于直线。

arrow = '-['#
class BracketCurve(widthA=1.0, lengthA=0.2, angleA=None)[source]#

基类: _Curve

一个在其起点处带有外向方括号并在终点处带有箭头的箭头。

参数:
widthAfloat, 默认值: 1.0

括号的宽度。

lengthAfloat, 默认值: 0.2

括号的长度。

angleAfloat, 默认值: 0 度

括号的方向,以逆时针角度表示。0 度表示垂直于直线。

arrow = ']->'#
class Curve[source]#

基类: _Curve

一个没有任何箭头的简单曲线。

参数:
head_lengthfloat, 默认值: 0.4

箭头头部的长度,相对于 mutation_size

head_widthfloat, 默认值: 0.2

箭头头部的宽度,相对于 mutation_size

widthA, widthBfloat, 默认值: 1.0

括号的宽度。

lengthA, lengthBfloat, 默认值: 0.2

括号的长度。

angleA, angleBfloat, 默认值: 0

括号的方向,以逆时针角度表示。0 度表示垂直于直线。

scaleA, scaleBfloat, 默认值: mutation_size

括号的比例。

class CurveA(head_length=0.4, head_width=0.2, widthA=1.0, widthB=1.0, lengthA=0.2, lengthB=0.2, angleA=0, angleB=0, scaleA=None, scaleB=None)[source]#

基类: _Curve

一个在其起点处带有箭头的箭头。

参数:
head_lengthfloat, 默认值: 0.4

箭头头部的长度,相对于 mutation_size

head_widthfloat, 默认值: 0.2

箭头头部的宽度,相对于 mutation_size

widthA, widthBfloat, 默认值: 1.0

括号的宽度。

lengthA, lengthBfloat, 默认值: 0.2

括号的长度。

angleA, angleBfloat, 默认值: 0

括号的方向,以逆时针角度表示。0 度表示垂直于直线。

scaleA, scaleBfloat, 默认值: mutation_size

括号的比例。

arrow = '<-'#
class CurveAB(head_length=0.4, head_width=0.2, widthA=1.0, widthB=1.0, lengthA=0.2, lengthB=0.2, angleA=0, angleB=0, scaleA=None, scaleB=None)[source]#

基类: _Curve

一个在起点和终点处都带有箭头的箭头。

参数:
head_lengthfloat, 默认值: 0.4

箭头头部的长度,相对于 mutation_size

head_widthfloat, 默认值: 0.2

箭头头部的宽度,相对于 mutation_size

widthA, widthBfloat, 默认值: 1.0

括号的宽度。

lengthA, lengthBfloat, 默认值: 0.2

括号的长度。

angleA, angleBfloat, 默认值: 0

括号的方向,以逆时针角度表示。0 度表示垂直于直线。

scaleA, scaleBfloat, 默认值: mutation_size

括号的比例。

arrow = '<->'#
class CurveB(head_length=0.4, head_width=0.2, widthA=1.0, widthB=1.0, lengthA=0.2, lengthB=0.2, angleA=0, angleB=0, scaleA=None, scaleB=None)[source]#

基类: _Curve

一个在其终点处带有箭头的箭头。

参数:
head_lengthfloat, 默认值: 0.4

箭头头部的长度,相对于 mutation_size

head_widthfloat, 默认值: 0.2

箭头头部的宽度,相对于 mutation_size

widthA, widthBfloat, 默认值: 1.0

括号的宽度。

lengthA, lengthBfloat, 默认值: 0.2

括号的长度。

angleA, angleBfloat, 默认值: 0

括号的方向,以逆时针角度表示。0 度表示垂直于直线。

scaleA, scaleBfloat, 默认值: mutation_size

括号的比例。

arrow = '->'#
class CurveBracket(widthB=1.0, lengthB=0.2, angleB=None)[source]#

基类: _Curve

一个在其终点处带有外向方括号并在起点处带有箭头的箭头。

参数:
widthBfloat, 默认值: 1.0

括号的宽度。

lengthBfloat, 默认值: 0.2

括号的长度。

angleBfloat, 默认值: 0 度

括号的方向,以逆时针角度表示。0 度表示垂直于直线。

arrow = '<-['#
class CurveFilledA(head_length=0.4, head_width=0.2, widthA=1.0, widthB=1.0, lengthA=0.2, lengthB=0.2, angleA=0, angleB=0, scaleA=None, scaleB=None)[source]#

基类: _Curve

一个在起点处带有实心三角形箭头的箭头。

参数:
head_lengthfloat, 默认值: 0.4

箭头头部的长度,相对于 mutation_size

head_widthfloat, 默认值: 0.2

箭头头部的宽度,相对于 mutation_size

widthA, widthBfloat, 默认值: 1.0

括号的宽度。

lengthA, lengthBfloat, 默认值: 0.2

括号的长度。

angleA, angleBfloat, 默认值: 0

括号的方向,以逆时针角度表示。0 度表示垂直于直线。

scaleA, scaleBfloat, 默认值: mutation_size

括号的比例。

arrow = '<|-|'#
class CurveFilledAB(head_length=0.4, head_width=0.2, widthA=1.0, widthB=1.0, lengthA=0.2, lengthB=0.2, angleA=0, angleB=0, scaleA=None, scaleB=None)[source]#

基类: _Curve

一个两端带有实心三角形箭头的箭头。

参数:
head_lengthfloat, 默认值: 0.4

箭头头部的长度,相对于 mutation_size

head_widthfloat, 默认值: 0.2

箭头头部的宽度,相对于 mutation_size

widthA, widthBfloat, 默认值: 1.0

括号的宽度。

lengthA, lengthBfloat, 默认值: 0.2

括号的长度。

angleA, angleBfloat, 默认值: 0

括号的方向,以逆时针角度表示。0 度表示垂直于直线。

scaleA, scaleBfloat, 默认值: mutation_size

括号的比例。

arrow = '<|-|>'#
class CurveFilledB(head_length=0.4, head_width=0.2, widthA=1.0, widthB=1.0, lengthA=0.2, lengthB=0.2, angleA=0, angleB=0, scaleA=None, scaleB=None)[source]#

基类: _Curve

一个在终点处带有实心三角形箭头的箭头。

参数:
head_lengthfloat, 默认值: 0.4

箭头头部的长度,相对于 mutation_size

head_widthfloat, 默认值: 0.2

箭头头部的宽度,相对于 mutation_size

widthA, widthBfloat, 默认值: 1.0

括号的宽度。

lengthA, lengthBfloat, 默认值: 0.2

括号的长度。

angleA, angleBfloat, 默认值: 0

括号的方向,以逆时针角度表示。0 度表示垂直于直线。

scaleA, scaleBfloat, 默认值: mutation_size

括号的比例。

arrow = '-|>'#
class Fancy(head_length=0.4, head_width=0.4, tail_width=0.4)[source]#

基类: _Base

一种花式箭头。仅适用于二次贝塞尔曲线。

参数:
head_lengthfloat, 默认值: 0.4

箭头头部的长度。

head_widthfloat, 默认值: 0.4

箭头头部的宽度。

tail_widthfloat, 默认值: 0.4

箭头尾部的宽度。

transmute(path, mutation_size, linewidth)[source]#

transmute 方法是 ArrowStyle 类的核心,必须在子类中重写。它接收将绘制箭头的 path 对象,以及用于缩放箭头头部等的 mutation_sizelinewidth 可用于调整路径,使其不会超出给定点。它返回一个 Path 实例和一个布尔值的元组。布尔值指示路径是否可填充。返回值也可以是相同长度的路径列表和布尔值列表。

class Simple(head_length=0.5, head_width=0.5, tail_width=0.2)[source]#

基类: _Base

一个简单的箭头。仅适用于二次贝塞尔曲线。

参数:
head_lengthfloat, 默认值: 0.5

箭头头部的长度。

head_widthfloat, 默认值: 0.5

箭头头部的宽度。

tail_widthfloat, 默认值: 0.2

箭头尾部的宽度。

transmute(path, mutation_size, linewidth)[source]#

transmute 方法是 ArrowStyle 类的核心,必须在子类中重写。它接收将绘制箭头的 path 对象,以及用于缩放箭头头部等的 mutation_sizelinewidth 可用于调整路径,使其不会超出给定点。它返回一个 Path 实例和一个布尔值的元组。布尔值指示路径是否可填充。返回值也可以是相同长度的路径列表和布尔值列表。

class Wedge(tail_width=0.3, shrink_factor=0.5)[source]#

基类: _Base

楔形(?)形状。仅适用于二次贝塞尔曲线。起点宽度为 tail_width,终点宽度为 0。在中点处,宽度为 shrink_factor*x*tail_width

参数:
tail_widthfloat, 默认值: 0.3

尾部的宽度。

shrink_factorfloat, 默认值: 0.5

中点处箭头宽度的比例。

transmute(path, mutation_size, linewidth)[source]#

transmute 方法是 ArrowStyle 类的核心,必须在子类中重写。它接收将绘制箭头的 path 对象,以及用于缩放箭头头部等的 mutation_sizelinewidth 可用于调整路径,使其不会超出给定点。它返回一个 Path 实例和一个布尔值的元组。布尔值指示路径是否可填充。返回值也可以是相同长度的路径列表和布尔值列表。

使用 matplotlib.patches.ArrowStyle 的示例#

括号箭头上的角度注释

括号箭头上的角度注释

注释箭头样式参考

注释箭头样式参考