Spec-Zone.ru › Matplotlib 3.7

matplotlib.pyplot.quiver

matplotlib.pyplot.quiver(*args, data=None, **kwargs)[source]

Построение 2D поля векторов.

Вызов функции:

quiver([X, Y], U, V, [C], **kwargs)

X, Y определяют расположение стрелок, U, V определяют направления стрелок, а C необязательно задаёт цвет.

Длина стрелки

По умолчанию длина стрелок автоматически масштабируется до разумного размера. Чтобы изменить это поведение, см. параметры scale и scale_units.

Форма стрелки

Форма стрелки определяется параметрами width, headwidth, headlength и headaxislength. См. примечания ниже.

Стиль стрелки

Каждая стрелка внутренне представлена заполненным многоугольником с шириной линии обводки по умолчанию 0. В результате, стрелка представляет собой скорее заполненную область, а не линию с наконечником, и свойства PolyCollection, такие как linewidth, edgecolor, facecolor и т.д., действуют соответствующим образом.

Параметры:
X, Y1D или 2D массив-подобный объект, необязательно

Координаты x и y расположения стрелок.

Если не указаны, они будут сгенерированы как равномерная целочисленная сетка на основе размерностей U и V.

Если X и Y являются 1D, а U, V — 2D, X и Y расширяются до 2D с помощью X, Y = np.meshgrid(X, Y). В этом случае len(X) и len(Y) должны соответствовать размерам столбцов и строк U и V.

U, V1D или 2D массив-подобный объект

Компоненты x и y направлений векторов стрелок. Интерпретация этих компонентов (в данных или в пространстве экрана) зависит от angles.

U и V должны иметь одинаковое число элементов, соответствующее числу расположений стрелок в X, Y. U и V могут быть замаскированы. Расположения, замаскированные в любом из U, V и C, не будут отображаться.

C1D или 2D массив-подобный объект, необязательно

Численные данные, определяющие цвета стрелок с помощью цветовой карты norm и cmap.

Это не поддерживает явные цвета. Если вы хотите установить цвета напрямую, используйте color вместо этого. Размер C должен соответствовать количеству расположений стрелок.

angles{'uv', 'xy'} или массив-подобный объект, по умолчанию: 'uv'

Метод определения угла стрелок.

  • 'uv': Направление стрелки в координатах экрана. Используйте это, если стрелки обозначают величину, которая не основана на координатах данных X, Y.

    Если U == V, ориентация стрелки на графике составляет 45 градусов против часовой стрелки от горизонтальной оси (положительное направление вправо).

  • 'xy': Направление стрелки в координатах данных, т.е. стрелки направлены от (x, y) к (x+u, y+v). Используйте это, например, для построения градиентного поля.
  • Произвольные углы могут быть заданы явно как массив значений в градусах, против часовой стрелки от горизонтальной оси.

    В этом случае U, V используются только для определения длины стрелок.

Примечание: инвертирование оси данных будет соответственным образом инвертировать стрелки только с angles='xy'.

pivot{'tail', 'mid', 'middle', 'tip'}, по умолчанию: 'tail'

Часть стрелки, которая привязана к сетке X, Y. Стрелка вращается вокруг этой точки.

'mid' — синоним 'middle'.

scalefloat, необязательно

Масштабирует длину стрелки обратно пропорционально.

Количество единиц данных на единицу длины стрелки, например, м/с на ширину графика; меньший параметр scale делает стрелку длиннее. Значение по умолчанию — None.

Если None, используется простой алгоритм автоматического масштабирования, основанный на средней длине вектора и количестве векторов. Единица длины стрелки задаётся параметром scale_units.

scale_units{'width', 'height', 'dots', 'inches', 'x', 'y', 'xy'}, необязательно

Если параметр scale равен None, единица длины стрелки. По умолчанию — None.

Например, если scale_units — 'inches', scale — 2.0, и (u, v) = (1, 0), то вектор будет иметь длину 0,5 дюймов.

Если scale_units — 'width' или 'height', то вектор будет иметь длину половины ширины/высоты осей.

Если scale_units — 'x', то вектор будет иметь длину 0,5 единиц оси x. Чтобы отобразить векторы в плоскости x-y, где u и v имеют те же единицы, что и x и y, используйте angles='xy', scale_units='xy', scale=1.

units{'width', 'height', 'dots', 'inches', 'x', 'y', 'xy'}, по умолчанию: 'width'

Влияет на размер стрелки (кроме длины). В частности, ширина стержня width измеряется в кратных этой единице.

Поддерживаемые значения:

  • 'width', 'height': Ширина или высота осей.
  • 'dots', 'inches': Пиксели или дюймы, основанные на dpi рисунка.
  • 'x', 'y', 'xy': X, Y или \(\sqrt{X^2 + Y^2}\) в единицах данных.

Следующая таблица обобщает, как эти значения влияют на видимый размер стрелки при масштабировании и изменении размера рисунка:

units

масштабирование

изменение размера рисунка

'x', 'y', 'xy'

размер стрелки масштабируется

—

'width', 'height'

—

размер стрелки масштабируется

'dots', 'inches'

—

—

widthfloat, необязательно

Ширина стержня стрелки в единицах стрелки. Все параметры наконечника относительны к width.

Значение по умолчанию зависит от выбора units выше и количества векторов; типичное начальное значение составляет около 0,005 ширины графика.

headwidthfloat, по умолчанию: 3

Ширина наконечника как кратное ширины стержня width. См. примечания ниже.

headlengthfloat, по умолчанию: 5

Длина наконечника как кратное ширины стержня width. См. примечания ниже.

headaxislengthfloat, по умолчанию: 4.5

Длина наконечника в точке пересечения со стержнем как кратное ширины стержня width. См. примечания ниже.

minshaftfloat, по умолчанию: 1

Длина ниже которой стрелка масштабируется, в единицах длины наконечника. Не устанавливайте это значение меньше 1, иначе маленькие стрелки будут выглядеть ужасно!

minlengthfloat, по умолчанию: 1

Минимальная длина как кратное ширины стержня; если длина стрелки меньше этого, отображается точка (шестиугольник) этого диаметра вместо неё.

colorцвет или последовательность цветов, необязательно

Явный цвет(а) для стрелок. Если C задан, color не имеет эффекта.

Это синоним параметра PolyCollection facecolor.

Возвращаемое значение:
Quiver
Другие параметры:
dataиндексируемый объект, необязательно

Если задан, все параметры также принимают строку s, которая интерпретируется как data[s] (если это не вызывает исключение).

**kwargsPolyCollection свойства, необязательно

Все остальные ключевые аргументы передаются в PolyCollection:

Свойство

Описание

agg_filter

функция фильтра, которая принимает массив float (m, n, 3) и значение dpi, и возвращает массив (m, n, 3) и два смещения от левого нижнего угла изображения

alpha

массивоподобный объект или скаляр или None

animated

bool

antialiased или aa или antialiaseds

bool или список bool

array

массивоподобный объект или None

capstyle

CapStyle или {'butt', 'projecting', 'round'}

clim

(vmin: float, vmax: float)

clip_box

Bbox

clip_on

bool

clip_path

Объект Patch или (Path, Transform) или None

cmap

Colormap или строка или None

color

цвет или список кортежей RGBA

edgecolor или ec или edgecolors

цвет или список цветов или 'face'

facecolor или facecolors или fc

цвет или список цветов

figure

Figure

gid

строка

hatch

{'/', '\', '|', '-', '+', 'x', 'o', 'O', '.', '*'}

in_layout

bool

joinstyle

JoinStyle или {'miter', 'round', 'bevel'}

label

объект

linestyle или dashes или linestyles или ls

строка или кортеж или список кортежей

linewidth или linewidths или lw

число с плавающей точкой или список чисел с плавающей точкой

mouseover

bool

norm

Normalize или строка или None

offset_transform или transOffset

неизвестно

offsets

(N, 2) или (2,) массивоподобный объект

path_effects

AbstractPathEffect

paths

список массивоподобных объектов

picker

None или bool или число с плавающей точкой или вызываемый объект

pickradius

неизвестно

rasterized

bool

sizes

numpy.ndarray или None

sketch_params

(scale: float, length: float, randomness: float)

snap

bool или None

transform

Transform

url

строка

urls

список строк или None

verts

список массивоподобных объектов

verts_and_codes

неизвестно

visible

bool

zorder

число с плавающей точкой

См. также

Axes.quiverkey

Добавить ключ к диаграмме векторов.

Примечания

Форма стрелки

Стрелка рисуется как многоугольник, используя узлы, как показано ниже. Значения headwidth, headlength и headaxislength задаются в единицах width.

../../_images/quiver_sizes.svg

По умолчанию получается стрелка с немного загнутым концом. Ниже приведены рекомендации по получению других форм:

  • Для создания треугольного наконечника сделайте headaxislength равным headlength.
  • Для создания более острого наконечника уменьшите headwidth или увеличьте headlength и headaxislength.
  • Для уменьшения наконечника относительно хвоста, пропорционально уменьшите все параметры наконечника.
  • Для удаления наконечника полностью, установите все параметры head в 0.
  • Для получения ромбовидного наконечника, сделайте headaxislength больше, чем headlength.
  • Предупреждение: Для headaxislength < (headlength / headwidth), узлы "headaxis" (т. е. те, которые соединяют наконечник со стволом) будут выступать за пределы наконечника в направлении вперед, так что стрелка будет выглядеть неполной.

Примеры использования matplotlib.pyplot.quiver

Расширенные функции quiver и quiverkey

Расширенные функции quiver и quiverkey

Простой пример quiver

Простой пример quiver

Демонстрация триградиента

Демонстрация триградиента

© 2012–2023 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.7.5/api/_as_gen/matplotlib.pyplot.quiver.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API