matplotlib.patches.ArrowStyle#
- class matplotlib.patches.ArrowStyle(stylename, **kwargs)[source]#
Bases:
_StyleArrowStyleis a container class which defines several arrowstyle classes, which is used to create an arrow path along a given path. These are mainly used withFancyArrowPatch.A arrowstyle object can be either created as:
ArrowStyle.Fancy(head_length=.4, head_width=.4, tail_width=.4)
or:
ArrowStyle("Fancy", head_length=.4, head_width=.4, tail_width=.4)
or:
ArrowStyle("Fancy, head_length=.4, head_width=.4, tail_width=.4")
The following classes are defined
Class
Name
Attrs
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
simplehead_length=0.5, head_width=0.5, tail_width=0.2
Fancy
fancyhead_length=0.4, head_width=0.4, tail_width=0.4
Wedge
wedgetail_width=0.3, shrink_factor=0.5
An instance of any arrow style class is a callable object, whose call signature is:
__call__(self, path, mutation_size, linewidth, aspect_ratio=1.)
and it returns a tuple of a
Pathinstance and a boolean value. path is aPathinstance along which the arrow will be drawn. mutation_size and aspect_ratio have the same meaning as inBoxStyle. linewidth is a line width to be stroked. This is meant to be used to correct the location of the head so that it does not overshoot the destination point, but not all classes support it.Return the instance of the subclass with the given style name.
- class BarAB(widthA=1.0, angleA=0, widthB=1.0, angleB=0)[source]#
Bases:
_CurveAn arrow with vertical bars
|at both ends.- Parameters:
- widthA, widthBfloat, default: 1.0
Width of the bracket.
- angleA, angleBfloat, default: 0 degrees
Orientation of the bracket, as a counterclockwise angle. 0 degrees means perpendicular to the line.
- arrow = '|-|'#
- class BracketA(widthA=1.0, lengthA=0.2, angleA=0)[source]#
Bases:
_CurveAn arrow with an outward square bracket at its start.
- Parameters:
- widthAfloat, default: 1.0
Width of the bracket.
- lengthAfloat, default: 0.2
Length of the bracket.
- angleAfloat, default: 0 degrees
Orientation of the bracket, as a counterclockwise angle. 0 degrees means perpendicular to the line.
- arrow = ']-'#
- class BracketAB(widthA=1.0, lengthA=0.2, angleA=0, widthB=1.0, lengthB=0.2, angleB=0)[source]#
Bases:
_CurveAn arrow with outward square brackets at both ends.
- Parameters:
- widthA, widthBfloat, default: 1.0
Width of the bracket.
- lengthA, lengthBfloat, default: 0.2
Length of the bracket.
- angleA, angleBfloat, default: 0 degrees
Orientation of the bracket, as a counterclockwise angle. 0 degrees means perpendicular to the line.
- arrow = ']-['#
- class BracketB(widthB=1.0, lengthB=0.2, angleB=0)[source]#
Bases:
_CurveAn arrow with an outward square bracket at its end.
- Parameters:
- widthBfloat, default: 1.0
Width of the bracket.
- lengthBfloat, default: 0.2
Length of the bracket.
- angleBfloat, default: 0 degrees
Orientation of the bracket, as a counterclockwise angle. 0 degrees means perpendicular to the line.
- arrow = '-['#
- class BracketCurve(widthA=1.0, lengthA=0.2, angleA=None)[source]#
Bases:
_CurveAn arrow with an outward square bracket at its start and a head at the end.
- Parameters:
- widthAfloat, default: 1.0
Width of the bracket.
- lengthAfloat, default: 0.2
Length of the bracket.
- angleAfloat, default: 0 degrees
Orientation of the bracket, as a counterclockwise angle. 0 degrees means perpendicular to the line.
- arrow = ']->'#
- class Curve[source]#
Bases:
_CurveA simple curve without any arrow head.
- Parameters:
- head_lengthfloat, default: 0.4
Length of the arrow head, relative to mutation_scale.
- head_widthfloat, default: 0.2
Width of the arrow head, relative to mutation_scale.
- widthAfloat, default: 1.0
Width of the bracket at the beginning of the arrow
- widthBfloat, default: 1.0
Width of the bracket at the end of the arrow
- lengthAfloat, default: 0.2
Length of the bracket at the beginning of the arrow
- lengthBfloat, default: 0.2
Length of the bracket at the end of the arrow
- angleAfloat, default 0
Orientation of the bracket at the beginning, as a counterclockwise angle. 0 degrees means perpendicular to the line.
- angleBfloat, default 0
Orientation of the bracket at the beginning, as a counterclockwise angle. 0 degrees means perpendicular to the line.
- scaleAfloat, default mutation_size
The mutation_size for the beginning bracket
- scaleBfloat, default mutation_size
The mutation_size for the end bracket
- 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]#
Bases:
_CurveAn arrow with a head at its begin point.
- Parameters:
- head_lengthfloat, default: 0.4
Length of the arrow head, relative to mutation_scale.
- head_widthfloat, default: 0.2
Width of the arrow head, relative to mutation_scale.
- widthAfloat, default: 1.0
Width of the bracket at the beginning of the arrow
- widthBfloat, default: 1.0
Width of the bracket at the end of the arrow
- lengthAfloat, default: 0.2
Length of the bracket at the beginning of the arrow
- lengthBfloat, default: 0.2
Length of the bracket at the end of the arrow
- angleAfloat, default 0
Orientation of the bracket at the beginning, as a counterclockwise angle. 0 degrees means perpendicular to the line.
- angleBfloat, default 0
Orientation of the bracket at the beginning, as a counterclockwise angle. 0 degrees means perpendicular to the line.
- scaleAfloat, default mutation_size
The mutation_size for the beginning bracket
- scaleBfloat, default mutation_size
The mutation_size for the end bracket
- 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]#
Bases:
_CurveAn arrow with heads both at the begin and the end point.
- Parameters:
- head_lengthfloat, default: 0.4
Length of the arrow head, relative to mutation_scale.
- head_widthfloat, default: 0.2
Width of the arrow head, relative to mutation_scale.
- widthAfloat, default: 1.0
Width of the bracket at the beginning of the arrow
- widthBfloat, default: 1.0
Width of the bracket at the end of the arrow
- lengthAfloat, default: 0.2
Length of the bracket at the beginning of the arrow
- lengthBfloat, default: 0.2
Length of the bracket at the end of the arrow
- angleAfloat, default 0
Orientation of the bracket at the beginning, as a counterclockwise angle. 0 degrees means perpendicular to the line.
- angleBfloat, default 0
Orientation of the bracket at the beginning, as a counterclockwise angle. 0 degrees means perpendicular to the line.
- scaleAfloat, default mutation_size
The mutation_size for the beginning bracket
- scaleBfloat, default mutation_size
The mutation_size for the end bracket
- 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]#
Bases:
_CurveAn arrow with a head at its end point.
- Parameters:
- head_lengthfloat, default: 0.4
Length of the arrow head, relative to mutation_scale.
- head_widthfloat, default: 0.2
Width of the arrow head, relative to mutation_scale.
- widthAfloat, default: 1.0
Width of the bracket at the beginning of the arrow
- widthBfloat, default: 1.0
Width of the bracket at the end of the arrow
- lengthAfloat, default: 0.2
Length of the bracket at the beginning of the arrow
- lengthBfloat, default: 0.2
Length of the bracket at the end of the arrow
- angleAfloat, default 0
Orientation of the bracket at the beginning, as a counterclockwise angle. 0 degrees means perpendicular to the line.
- angleBfloat, default 0
Orientation of the bracket at the beginning, as a counterclockwise angle. 0 degrees means perpendicular to the line.
- scaleAfloat, default mutation_size
The mutation_size for the beginning bracket
- scaleBfloat, default mutation_size
The mutation_size for the end bracket
- arrow = '->'#
- class CurveBracket(widthB=1.0, lengthB=0.2, angleB=None)[source]#
Bases:
_CurveAn arrow with an outward square bracket at its end and a head at the start.
- Parameters:
- widthBfloat, default: 1.0
Width of the bracket.
- lengthBfloat, default: 0.2
Length of the bracket.
- angleBfloat, default: 0 degrees
Orientation of the bracket, as a counterclockwise angle. 0 degrees means perpendicular to the line.
- 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]#
Bases:
_CurveAn arrow with filled triangle head at the begin.
- Parameters:
- head_lengthfloat, default: 0.4
Length of the arrow head, relative to mutation_scale.
- head_widthfloat, default: 0.2
Width of the arrow head, relative to mutation_scale.
- widthAfloat, default: 1.0
Width of the bracket at the beginning of the arrow
- widthBfloat, default: 1.0
Width of the bracket at the end of the arrow
- lengthAfloat, default: 0.2
Length of the bracket at the beginning of the arrow
- lengthBfloat, default: 0.2
Length of the bracket at the end of the arrow
- angleAfloat, default 0
Orientation of the bracket at the beginning, as a counterclockwise angle. 0 degrees means perpendicular to the line.
- angleBfloat, default 0
Orientation of the bracket at the beginning, as a counterclockwise angle. 0 degrees means perpendicular to the line.
- scaleAfloat, default mutation_size
The mutation_size for the beginning bracket
- scaleBfloat, default mutation_size
The mutation_size for the end bracket
- 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]#
Bases:
_CurveAn arrow with filled triangle heads at both ends.
- Parameters:
- head_lengthfloat, default: 0.4
Length of the arrow head, relative to mutation_scale.
- head_widthfloat, default: 0.2
Width of the arrow head, relative to mutation_scale.
- widthAfloat, default: 1.0
Width of the bracket at the beginning of the arrow
- widthBfloat, default: 1.0
Width of the bracket at the end of the arrow
- lengthAfloat, default: 0.2
Length of the bracket at the beginning of the arrow
- lengthBfloat, default: 0.2
Length of the bracket at the end of the arrow
- angleAfloat, default 0
Orientation of the bracket at the beginning, as a counterclockwise angle. 0 degrees means perpendicular to the line.
- angleBfloat, default 0
Orientation of the bracket at the beginning, as a counterclockwise angle. 0 degrees means perpendicular to the line.
- scaleAfloat, default mutation_size
The mutation_size for the beginning bracket
- scaleBfloat, default mutation_size
The mutation_size for the end bracket
- 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]#
Bases:
_CurveAn arrow with filled triangle head at the end.
- Parameters:
- head_lengthfloat, default: 0.4
Length of the arrow head, relative to mutation_scale.
- head_widthfloat, default: 0.2
Width of the arrow head, relative to mutation_scale.
- widthAfloat, default: 1.0
Width of the bracket at the beginning of the arrow
- widthBfloat, default: 1.0
Width of the bracket at the end of the arrow
- lengthAfloat, default: 0.2
Length of the bracket at the beginning of the arrow
- lengthBfloat, default: 0.2
Length of the bracket at the end of the arrow
- angleAfloat, default 0
Orientation of the bracket at the beginning, as a counterclockwise angle. 0 degrees means perpendicular to the line.
- angleBfloat, default 0
Orientation of the bracket at the beginning, as a counterclockwise angle. 0 degrees means perpendicular to the line.
- scaleAfloat, default mutation_size
The mutation_size for the beginning bracket
- scaleBfloat, default mutation_size
The mutation_size for the end bracket
- arrow = '-|>'#
- class Fancy(head_length=0.4, head_width=0.4, tail_width=0.4)[source]#
Bases:
_BaseA fancy arrow. Only works with a quadratic Bezier curve.
- Parameters:
- head_lengthfloat, default: 0.4
Length of the arrow head.
- head_widthfloat, default: 0.4
Width of the arrow head.
- tail_widthfloat, default: 0.4
Width of the arrow tail.
- transmute(path, mutation_size, linewidth)[source]#
The transmute method is the very core of the ArrowStyle class and must be overridden in the subclasses. It receives the path object along which the arrow will be drawn, and the mutation_size, with which the arrow head etc. will be scaled. The linewidth may be used to adjust the path so that it does not pass beyond the given points. It returns a tuple of a Path instance and a boolean. The boolean value indicate whether the path can be filled or not. The return value can also be a list of paths and list of booleans of a same length.
- class Simple(head_length=0.5, head_width=0.5, tail_width=0.2)[source]#
Bases:
_BaseA simple arrow. Only works with a quadratic Bezier curve.
- Parameters:
- head_lengthfloat, default: 0.5
Length of the arrow head.
- head_widthfloat, default: 0.5
Width of the arrow head.
- tail_widthfloat, default: 0.2
Width of the arrow tail.
- transmute(path, mutation_size, linewidth)[source]#
The transmute method is the very core of the ArrowStyle class and must be overridden in the subclasses. It receives the path object along which the arrow will be drawn, and the mutation_size, with which the arrow head etc. will be scaled. The linewidth may be used to adjust the path so that it does not pass beyond the given points. It returns a tuple of a Path instance and a boolean. The boolean value indicate whether the path can be filled or not. The return value can also be a list of paths and list of booleans of a same length.
- class Wedge(tail_width=0.3, shrink_factor=0.5)[source]#
Bases:
_BaseWedge(?) shape. Only works with a quadratic Bezier curve. The begin point has a width of the tail_width and the end point has a width of 0. At the middle, the width is shrink_factor*tail_width.
- Parameters:
- tail_widthfloat, default: 0.3
Width of the tail.
- shrink_factorfloat, default: 0.5
Fraction of the arrow width at the middle point.
- transmute(path, mutation_size, linewidth)[source]#
The transmute method is the very core of the ArrowStyle class and must be overridden in the subclasses. It receives the path object along which the arrow will be drawn, and the mutation_size, with which the arrow head etc. will be scaled. The linewidth may be used to adjust the path so that it does not pass beyond the given points. It returns a tuple of a Path instance and a boolean. The boolean value indicate whether the path can be filled or not. The return value can also be a list of paths and list of booleans of a same length.