matplotlib.patches.FancyArrowPatch
- classmatplotlib.patches.FancyArrowPatch(posA=None, posB=None, path=None, arrowstyle='simple', connectionstyle='arc3', patchA=None, patchB=None, shrinkA=2, shrinkB=2, mutation_scale=1, mutation_aspect=1, dpi_cor=<deprecated parameter>, **kwargs)[source]
-
Bases:
matplotlib.patches.PatchA fancy arrow patch. It draws an arrow using the
ArrowStyle.The head and tail positions are fixed at the specified start and end points of the arrow, but the size and shape (in display coordinates) of the arrow does not change when the axis is moved or zoomed.
There are two ways for defining an arrow:
- If posA and posB are given, a path connecting two points is created according to connectionstyle. The path will be clipped with patchA and patchB and further shrunken by shrinkA and shrinkB. An arrow is drawn along this resulting path using the arrowstyle parameter.
- Alternatively if path is provided, an arrow is drawn along this path and patchA, patchB, shrinkA, and shrinkB are ignored.
- Parameters
-
- posA, posB(float, float), default: None
-
(x, y) coordinates of arrow tail and arrow head respectively.
-
path
Path, default: None -
If provided, an arrow is drawn along this path and patchA, patchB, shrinkA, and shrinkB are ignored.
-
arrowstylestr or
ArrowStyle, default: 'simple' -
The
ArrowStylewith which the fancy arrow is drawn. If a string, it should be one of the available arrowstyle names, with optional comma-separated attributes. The optional attributes are meant to be scaled with the mutation_scale. The following arrow styles are available: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
-
connectionstylestr or
ConnectionStyleor None, optional, default: 'arc3' -
The
ConnectionStylewith which posA and posB are connected. If a string, it should be one of the available connectionstyle names, with optional comma-separated attributes. The following connection styles are available:Class
Name
Attrs
Arc3
arc3rad=0.0
Angle3
angle3angleA=90, angleB=0
Angle
angleangleA=90, angleB=0, rad=0.0
Arc
arcangleA=0, angleB=0, armA=None, armB=None, rad=0.0
Bar
bararmA=0.0, armB=0.0, fraction=0.3, angle=None
-
patchA, patchB
Patch, default: None -
Head and tail patches, respectively.
- shrinkA, shrinkBfloat, default: 2
-
Shrinking factor of the tail and head of the arrow respectively.
- mutation_scalefloat, default: 1
-
Value with which attributes of arrowstyle (e.g., head_length) will be scaled.
- mutation_aspectNone or float, default: None
-
The height of the rectangle will be squeezed by this value before the mutation and the mutated box will be stretched by the inverse of it.
- dpi_corfloat, default: 1
-
dpi_cor is currently used for linewidth-related things and shrink factor. Mutation scale is affected by this. Deprecated.
- Other Parameters
-
-
**kwargs
Patchсвойства, необязательно -
Вот список доступных свойств
Patch:Свойство
Описание
функция фильтра, которая принимает массив чисел с плавающей точкой (m, n, 3) и значение dpi и возвращает массив (m, n, 3)
неизвестно
bool
antialiasedили aabool или None
CapStyleили {'butt', 'projecting', 'round'}bool
Patch или (Path, Transform) или None
цвет
edgecolorили ecцвет или None
facecolorили fcцвет или None
bool
str
{'/', '\', '|', '-', '+', 'x', 'o', 'O', '.', '*'}
bool
JoinStyleили {'miter', 'round', 'bevel'}объект
linestyleили ls{'-', '--', '-.', ':', '', (смещение, последовательность включений/выключений), ...}
linewidthили lwчисло с плавающей точкой или None
None или bool или число с плавающей точкой или вызываемая функция
bool
(масштаб: число с плавающей точкой, длина: число с плавающей точкой, случайность: число с плавающей точкой)
bool или None
строка
bool
число с плавающей точкой
В отличие от других объектов, значения по умолчанию
capstyleиjoinstyleдляFancyArrowPatchустановлены в"round".
-
**kwargs
- draw(renderer)[source]
-
Отображение элемента (и его дочерних элементов) с помощью заданного рендерера.
Это не повлияет на элемент, если он не отображается (
Artist.get_visibleвозвращает False).- Параметры
-
-
renderer
RendererBaseподкласс.
-
renderer
Примечания
Этот метод переопределён в подклассах Artist.
- get_arrowstyle()[source]
-
Возвращает объект arrowstyle.
- get_connectionstyle()[source]
-
Возвращает используемый
ConnectionStyle.
-
- get_dpi_cor()[source]
-
[Устаревший] dpi_cor в настоящее время используется для параметров, связанных с шириной линии, и коэффициента уменьшения. Это влияет на масштаб мутации.
- Возвращает
-
- скаляр
Примечания
Устарело начиная с версии 3.4.
- get_mutation_aspect()[source]
-
Возвращает коэффициент пропорциональности изменения размеров объекта.
- get_mutation_scale()[source]
-
Возвращает масштаб мутации.
- Возвращает
-
- скаляр
- get_path()[source]
-
Возвращает путь стрелки в координатах данных.
- propertyget_path_in_displaycoord[source]
- set(*, agg_filter=<UNSET>, alpha=<UNSET>, animated=<UNSET>, antialiased=<UNSET>, arrowstyle=<UNSET>, capstyle=<UNSET>, clip_box=<UNSET>, clip_on=<UNSET>, clip_path=<UNSET>, color=<UNSET>, connectionstyle=<UNSET>, dpi_cor=<UNSET>, edgecolor=<UNSET>, facecolor=<UNSET>, fill=<UNSET>, gid=<UNSET>, hatch=<UNSET>, in_layout=<UNSET>, joinstyle=<UNSET>, label=<UNSET>, linestyle=<UNSET>, linewidth=<UNSET>, mutation_aspect=<UNSET>, mutation_scale=<UNSET>, patchA=<UNSET>, patchB=<UNSET>, path_effects=<UNSET>, picker=<UNSET>, positions=<UNSET>, rasterized=<UNSET>, sketch_params=<UNSET>, snap=<UNSET>, transform=<UNSET>, url=<UNSET>, visible=<UNSET>, zorder=<UNSET>)[source]
-
Установить сразу несколько свойств.
Поддерживаемые свойства:
Свойство
Описание
Функция фильтра, которая принимает массив с плавающей запятой (m, n, 3) и значение dpi, а возвращает массив (m, n, 3)
скаляр или None
булево значение
antialiasedили aaбулево значение или None
None или ArrowStyle или строка, по умолчанию: None
CapStyleили {'butt', 'projecting', 'round'}булево значение
Patch или (Path, Transform) или None
цвет
строка или
ConnectionStyleили None, необязательнонеизвестно
edgecolorили ecцвет или None
facecolorили fcцвет или None
булево значение
строка
{'/', '\', '|', '-', '+', 'x', 'o', 'O', '.', '*'}
булево значение
JoinStyleили {'miter', 'round', 'bevel'}объект
linestyleили ls{'-', '--', '-.', ':', '', (offset, on-off-seq), ...}
linewidthили lwчисло с плавающей точкой или None
число с плавающей точкой
число с плавающей точкой
None или булево значение или число с плавающей точкой или вызываемая функция
неизвестно
булево значение
(масштаб: число с плавающей точкой, длина: число с плавающей точкой, случайность: число с плавающей точкой)
булево значение или None
строка
булево значение
число с плавающей точкой
- set_arrowstyle(arrowstyle=None, **kw)[source]
-
Установить стиль стрелки. Старые атрибуты забываются. Без аргументов (или с
arrowstyle=None) возвращает доступные стили стрелок в виде списка строк.- Параметры
-
- arrowstyleNone или ArrowStyle или строка, по умолчанию: None
-
Может быть строкой с именем стиля стрелки с необязательными разделителями запятых, например:
set_arrowstyle("Fancy,head_length=0.2")Также атрибуты могут быть заданы в качестве ключевых слов, например:
set_arrowstyle("fancy", head_length=0.2)
-
- set_connectionstyle(connectionstyle, **kw)[source]
-
Установите стиль соединения. Старые атрибуты забываются.
- Параметры
-
-
connectionstylestr или
ConnectionStyleили None, необязательно -
Может быть строкой с именем стиля соединения с необязательными разделенными запятыми атрибутами, например:
set_connectionstyle("arc,angleA=0,armA=30,rad=10")В качестве альтернативы атрибуты можно указать в виде ключевых слов, например:
set_connectionstyle("arc", angleA=0,armA=30,rad=10)Без каких-либо аргументов (или с
connectionstyle=None) верните доступные стили в виде списка строк.
-
connectionstylestr или
- set_dpi_cor(dpi_cor)[source]
-
[Устарело] dpi_cor в настоящее время используется для вещей, связанных с шириной линии, и для коэффициента уменьшения. Масштаб мутации зависит от этого.
- Параметры
-
- dpi_corfloat
Примечания
Устарело начиная с версии 3.4.
- set_mutation_aspect(aspect)[source]
-
Установите соотношение сторон мутации bbox.
- Параметры
-
- aspectfloat
- set_mutation_scale(scale)[source]
-
Установите масштаб мутации.
- Параметры
-
- scalefloat
- set_patchA(patchA)[source]
-
Установите хвостовую фигуру.
- Параметры
-
-
patchA
patches.Patch
-
patchA
- set_patchB(patchB)[source]
-
Установите головную фигуру.
- Параметры
-
-
patchB
patches.Patch
-
patchB
- set_positions(posA, posB)[source]
-
Установите начальные и конечные позиции соединяющей траектории.
- Параметры
-
- posA, posBNone, tuple
-
(x, y) координаты хвоста и головы стрелки соответственно. Если
Noneиспользуйте текущее значение.
Примеры использования matplotlib.patches.FancyArrowPatch
© 2012–2021 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.5.1/api/_as_gen/matplotlib.patches.FancyArrowPatch.html