Spec-Zone.ru › Matplotlib 3.8

matplotlib.transforms

Inheritance diagram of matplotlib.transforms

В Matplotlib реализован механизм произвольных геометрических преобразований, используемый для определения окончательного расположения всех элементов, нарисованных на холсте.

Преобразования формируются в деревьях объектов TransformNode, чьи фактические значения зависят от их потомков. При изменении содержимого потомков их родительские преобразования автоматически аннулируются. При следующем обращении к аннулированному преобразованию оно пересчитывается, чтобы отразить эти изменения. Этот подход с аннулированием/кешированием предотвращает ненужные пересчёты преобразований и способствует лучшей интерактивной производительности.

Например, вот граф дерева преобразований, используемого для отображения данных на графике:

../_images/transforms.png

Механизм может использоваться как для аффинных, так и для неаффинных преобразований. Однако для повышения скорости мы хотим использовать бэкенд-рендеры для выполнения аффинных преобразований по возможности. Поэтому возможно выполнить только аффинную или неаффинную часть преобразования над набором данных. Аффинное преобразование всегда предполагается выполняющимся после неаффинного. Для любого преобразования:

full transform == non-affine part + affine part

Бэкенды не должны обрабатывать неаффинные преобразования самостоятельно.

Обратитесь к учебнику Учебник по преобразованиям для примеров использования преобразований.

classmatplotlib.transforms.Affine2D(matrix=None, **kwargs)[source]

Bases: Affine2DBase

Изменяемая 2D аффинная трансформация.

Инициализировать аффинную трансформацию из 3x3 массива numpy с плавающей точкой:

a c e
b d f
0 0 1

Если matrix равно None, инициализировать с тождественной трансформацией.

clear()[source]

Сбросить базовую матрицу до тождественной трансформации.

staticfrom_values(a, b, c, d, e, f)[source]

Создать новый экземпляр Affine2D из заданных значений:

a c e
b d f
0 0 1

.

get_matrix()[source]

Получить базовую матрицу преобразования в виде массива 3x3:

a c e
b d f
0 0 1

.

rotate(theta)[source]

Добавить вращение (в радианах) к этой трансформации на месте.

Возвращает self, поэтому этот метод можно легко использовать в цепочке с другими вызовами rotate(), rotate_deg(), translate() и scale().

rotate_around(x, y, theta)[source]

Добавить вращение (в радианах) вокруг точки (x, y) на месте.

Возвращает self, поэтому этот метод можно легко использовать в цепочке с другими вызовами rotate(), rotate_deg(), translate() и scale().

rotate_deg(degrees)[source]

Добавить вращение (в градусах) к этой трансформации на месте.

Возвращает self, поэтому этот метод можно легко использовать в цепочке с другими вызовами rotate(), rotate_deg(), translate() и scale().

rotate_deg_around(x, y, degrees)[source]

Добавить вращение (в градусах) вокруг точки (x, y) на месте.

Возвращает self, поэтому этот метод можно легко использовать в цепочке с другими вызовами rotate(), rotate_deg(), translate() и scale().

scale(sx, sy=None)[source]

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

Если sy равно None, одинаковый масштаб применяется по обеим осям x и y.

Возвращает self, поэтому этот метод можно легко использовать в цепочке с другими вызовами rotate(), rotate_deg(), translate() и scale().

set(other)[source]

Установить эту трансформацию из неизменяемой копии другого объекта Affine2DBase.

set_matrix(mtx)[source]

Установить базовую матрицу преобразования из массива 3x3:

a c e
b d f
0 0 1

.

skew(xShear, yShear)[source]

Добавить сдвиг на месте.

xShear и yShear — углы сдвига по осям x и y соответственно в радианах.

Возвращает self, поэтому этот метод можно легко использовать в цепочке с другими вызовами rotate(), rotate_deg(), translate() и scale().

skew_deg(xShear, yShear)[source]

Добавить сдвиг на месте.

xShear и yShear — углы сдвига вдоль осей x и y соответственно в градусах.

Возвращает self, поэтому этот метод можно легко объединить с дополнительными вызовами rotate(), rotate_deg(), translate() и scale().

translate(tx, ty)[source]

Добавить сдвиг на месте.

Возвращает self, поэтому этот метод можно легко объединить с дополнительными вызовами rotate(), rotate_deg(), translate() и scale().

classmatplotlib.transforms.Affine2DBase(*args, **kwargs)[source]

Базовый класс всех 2D аффинных преобразований.

2D аффинные преобразования выполняются с использованием массива numpy 3x3:

a c e
b d f
0 0 1

Этот класс предоставляет только интерфейс для чтения. Для изменяемого 2D аффинного преобразования используйте Affine2D.

Подклассы этого класса, как правило, будут нуждаться только в переопределении конструктора и get_matrix, который генерирует пользовательскую матрицу 3x3.

Параметры:
shorthand_namestr

Строка, представляющая «имя» преобразования. Имя не имеет значения, кроме улучшения удобочитаемости str(transform) при DEBUG=True.

frozen()[source]

Возвращает замороженную копию этого преобразования. Замороженная копия не будет обновляться при изменении её дочерних элементов. Полезно для сохранения ранее известного состояния преобразования, где copy.deepcopy() обычно используется.

has_inverse=True

True, если у этого преобразования есть соответствующее обратное преобразование.

input_dims=2

Количество входных измерений этого преобразования. Должно быть переопределено (целыми числами) в подклассе.

inverted()[source]

Возвращает соответствующее обратное преобразование.

Содержит x == self.inverted().transform(self.transform(x)).

Результат этого метода следует рассматривать как временный. Обновление self не вызывает соответствующего обновления его обратной копии.

propertyis_separable

bool(x) -> bool

Возвращает True, если аргумент x истинный, иначе False. Встроенные True и False — единственные два экземпляра класса bool. Класс bool — подкласс класса int и не может быть подклассом.

output_dims=2

Количество выходных измерений этого преобразования. Должно быть переопределено (целыми числами) в подклассе.

to_values()[source]

Возвращает значения матрицы в виде (a, b, c, d, e, f) кортежа.

transform_affine(values)[source]

Применяет только аффинную часть этого преобразования к заданному массиву значений.

transform(values) всегда эквивалентно transform_affine(transform_non_affine(values)).

В неаффинных преобразованиях это, как правило, ничто. В аффинных преобразованиях это эквивалентно transform(values).

Параметры:
valuesarray

Входные значения в виде массива длиной input_dims или формы (N, input_dims).

Возвращает:
array

Выходные значения в виде массива длиной output_dims или формы (N, output_dims), в зависимости от входных данных.

классmatplotlib.transforms.AffineBase(*args, **kwargs)[source]

Базовый класс всех аффинных преобразований любого числа измерений.

Параметры:
shorthand_namestr

Строка, представляющая «имя» преобразования. Имя не имеет никакого значения, кроме улучшения удобочитаемости str(transform) при DEBUG=True.

get_affine()[source]

Получить аффинную часть этого преобразования.

is_affine=True
transform(values)[source]

Применить это преобразование к заданному массиву значений.

Параметры:
valuesarray-like

Входные значения в виде массива длиной input_dims или формы (N, input_dims).

Возвращает:
массив

Выходные значения в виде массива длиной output_dims или формы (N, output_dims), в зависимости от входных данных.

transform_affine(values)[source]

Применить только аффинную часть этого преобразования к заданному массиву значений.

transform(values) всегда эквивалентно transform_affine(transform_non_affine(values)).

В неаффинных преобразованиях это обычно является операцией без действия. В аффинных преобразованиях это эквивалентно transform(values).

Параметры:
valuesмассив

Входные значения в виде массива длиной input_dims или формы (N, input_dims).

Возвращает:
массив

Выходные значения в виде массива длиной output_dims или формы (N, output_dims), в зависимости от входных данных.

transform_non_affine(values)[source]

Применить только неаффинную часть этого преобразования.

transform(values) всегда эквивалентно transform_affine(transform_non_affine(values)).

В неаффинных преобразованиях это, как правило, эквивалентно transform(values). В аффинных преобразованиях это всегда операция без действия.

Параметры:
valuesмассив

Входные значения в виде массива длиной input_dims или формы (N, input_dims).

Возвращает:
массив

Выходные значения в виде массива длиной output_dims или формы (N, output_dims), в зависимости от входных данных.

transform_path(path)[source]

Применить преобразование к Path path, возвращая новый Path.

В некоторых случаях это преобразование может вставить кривые в траекторию, которая начиналась как отрезки прямых.

transform_path_affine(path)[source]

Применить аффинную часть этого преобразования к Path path, возвращая новый Path.

transform_path(path) эквивалентно transform_path_affine(transform_path_non_affine(values)).

transform_path_non_affine(path)[source]

Применить неаффинную часть этого преобразования к Path path, возвращая новый Path.

transform_path(path) эквивалентно transform_path_affine(transform_path_non_affine(values)).

классmatplotlib.transforms.AffineDeltaTransform(transform, **kwargs)[source]

Обёртка преобразования для преобразования смещений между парами точек.

Этот класс предназначен для преобразования смещений («смещений положения») между парами точек (например, как offset_transform Collection): задано преобразование t, таким образом, t = AffineDeltaTransform(t) + offset, AffineDeltaTransform удовлетворяет AffineDeltaTransform(a - b) == AffineDeltaTransform(a) - AffineDeltaTransform(b).

Это реализуется путём принудительного обнуления компонентов смещения матрицы преобразования.

Этот класс является экспериментальным начиная с версии 3.3, и API может измениться.

Параметры:
shorthand_namestr

Строка, представляющая «имя» преобразования. Имя не имеет никакого значения, кроме улучшения удобочитаемости str(transform) при DEBUG=True.

get_matrix()[source]

Получить матрицу для аффинной части этого преобразования.

классmatplotlib.transforms.Bbox(points, **kwargs)[source]
END_OF_DOCUMENT_MARKER

Bases: BboxBase

Изменяемый прямоугольник.

Примеры

Создание по известным границам

Конструктор по умолчанию принимает граничные "точки" [[xmin, ymin], [xmax, ymax]].

>>> Bbox([[1, 1], [3, 7]])
Bbox([[1.0, 1.0], [3.0, 7.0]])

В качестве альтернативы, прямоугольник можно создать из плоского массива точек, так называемых "экстентов" (xmin, ymin, xmax, ymax)

>>> Bbox.from_extents(1, 1, 3, 7)
Bbox([[1.0, 1.0], [3.0, 7.0]])

или из "границ" (xmin, ymin, width, height).

>>> Bbox.from_bounds(1, 1, 2, 6)
Bbox([[1.0, 1.0], [3.0, 7.0]])

Создание из набора точек

"Пустой" объект для накопления прямоугольников — это нулевой прямоугольник, который является псевдонимом для пустого множества.

>>> Bbox.null()
Bbox([[inf, inf], [-inf, -inf]])

Добавление точек к нулевому прямоугольнику даст вам прямоугольник этих точек.

>>> box = Bbox.null()
>>> box.update_from_data_xy([[1, 1]])
>>> box
Bbox([[1.0, 1.0], [1.0, 1.0]])
>>> box.update_from_data_xy([[2, 3], [3, 2]], ignore=False)
>>> box
Bbox([[1.0, 1.0], [3.0, 3.0]])

Установка ignore=True эквивалентна началу с нулевого прямоугольника.

>>> box.update_from_data_xy([[1, 1]], ignore=True)
>>> box
Bbox([[1.0, 1.0], [1.0, 1.0]])

Предупреждение

Рекомендуется всегда указывать ignore явно. В противном случае значение по умолчанию ignore может быть изменено в любой момент кодом, имеющим доступ к вашему прямоугольнику, например, с помощью метода ignore.

Свойства нулевого прямоугольника

Примечание

Текущее поведение Bbox.null() может быть неожиданным, так как у него нет всех свойств "пустого множества", и поэтому он не ведет себя как "нулевой" объект в математическом смысле. Мы можем изменить это в будущем (с периодом устаревания).

Нулевой прямоугольник является тождественным элементом для пересечений

>>> Bbox.intersection(Bbox([[1, 1], [3, 7]]), Bbox.null())
Bbox([[1.0, 1.0], [3.0, 7.0]])

кроме как с самим собой, где он возвращает всё пространство.

>>> Bbox.intersection(Bbox.null(), Bbox.null())
Bbox([[-inf, -inf], [inf, inf]])

Объединение, содержащее ноль, всегда вернёт всё пространство (не другое множество!)

>>> Bbox.union([Bbox([[0, 0], [0, 0]]), Bbox.null()])
Bbox([[-inf, -inf], [inf, inf]])
Параметры:
pointsndarray

Массив (2, 2) вида [[x0, y0], [x1, y1]].

propertybounds

Возвращает (x0, y0, width, height).

staticfrom_bounds(x0, y0, width, height)[source]

Создаёт новый Bbox из x0, y0, width и height.

width и height могут быть отрицательными.

staticfrom_extents(*args, minpos=None)[source]

Создаёт новый прямоугольник из left, bottom, right и top.

Ось y возрастает вверх.

Параметры:
left, bottom, right, topfloat

Четыре границы прямоугольника.

minposfloat или None

Если указано, прямоугольник получит минимальное положительное значение. Это полезно при работе с логарифмическими шкалами и другими шкалами, где отрицательные границы приводят к ошибкам с плавающей точкой.

frozen()[source]

Базовый класс для всего, что участвует в дереве преобразований и должно инвалидировать своих родителей или быть инвалидированным. Это включает классы, которые фактически не являются преобразованиями, такие как прямоугольники, так как некоторые преобразования зависят от прямоугольников для вычисления своих значений.

get_points()[source]

Получить точки прямоугольника как массив вида [[x0, y0], [x1, y1]].

ignore(value)[source]

Установить, игнорировать ли существующие границы прямоугольника последующими вызовами update_from_data_xy().

valuebool
  • При True, последующие вызовы update_from_data_xy будут игнорировать существующие границы прямоугольника.
  • При False, последующие вызовы update_from_data_xy будут включать существующие границы прямоугольника.
propertyintervalx

Пара x-координат, определяющих прямоугольник.

Не гарантируется, что они отсортированы слева направо.

propertyintervaly

Пара y-координат, определяющих прямоугольник.

Не гарантируется, что они отсортированы снизу вверх.

propertyminpos

Минимальное положительное значение в обоих направлениях внутри прямоугольника.

Это полезно при работе с логарифмическими шкалами и другими шкалами, где отрицательные границы приводят к ошибкам с плавающей точкой, и будет использоваться как минимальный экстент вместо p0.

propertyminposx

Минимальное положительное значение по x-направлению внутри прямоугольника.

Это полезно при работе с логарифмическими шкалами и другими шкалами, где отрицательные границы приводят к ошибкам с плавающей точкой, и будет использоваться как минимальный x-экстент вместо x0.

propertyminposy

Минимальное положительное значение по y-направлению внутри прямоугольника.

Это полезно при работе с логарифмическими шкалами и другими шкалами, где отрицательные границы приводят к ошибкам с плавающей точкой, и будет использоваться как минимальный y-экстент вместо y0.

mutated()[source]

Возвращает, изменился ли прямоугольник со времени инициализации.

mutatedx()[source]

Возвращает, изменились ли x-границы со времени инициализации.

mutatedy()[source]

Возвращает, изменились ли y-границы со времени инициализации.

staticnull()[source]

Создать новый нулевой прямоугольник Bbox от (бесконечность, бесконечность) до (-бесконечность, -бесконечность).

propertyp0

Первая пара координат (x, y), определяющих прямоугольник.

Это не гарантированно будет нижний левый угол (для этого используйте min).

propertyp1

Вторая пара координат (x, y), определяющих прямоугольник.

Это не гарантированно будет верхний правый угол (для этого используйте max).

set(other)[source]

Установить этот прямоугольник по "замороженным" границам другого Bbox.

set_points(points)[source]

Установить точки прямоугольника напрямую из массива вида [[x0, y0], [x1, y1]]. Проверка ошибок не выполняется, так как этот метод в основном предназначен для внутреннего использования.

staticunit()[source]

Создать новый единичный прямоугольник Bbox от (0, 0) до (1, 1).

update_from_data_x(x, ignore=None)[source]

Обновить границы по x прямоугольника Bbox на основе переданных данных. После обновления границы будут иметь положительную ширину, а x0 — минимальное значение.

Parameters:
xndarray

Массив значений x.

ignorebool, optional
  • При True, игнорировать существующие границы прямоугольника Bbox.
  • При False, учитывать существующие границы прямоугольника Bbox.
  • При None, использовать последнее значение, переданное в ignore().
update_from_data_xy(xy, ignore=None, updatex=True, updatey=True)[source]

Обновить границы прямоугольника Bbox на основе переданных координат xy.

После обновления границы будут иметь положительную ширину и высоту; x0 и y0 будут минимальными значениями.

Parameters:
xy(N, 2) array-like

Координаты (x, y).

ignorebool, optional
  • При True, игнорировать существующие границы прямоугольника Bbox.
  • При False, учитывать существующие границы прямоугольника Bbox.
  • При None, использовать последнее значение, переданное в ignore().
updatex, updateybool, default: True

При True, обновить значения x/y.

update_from_data_y(y, ignore=None)[source]

Обновить границы по y прямоугольника Bbox на основе переданных данных. После обновления границы будут иметь положительную высоту, а y0 — минимальное значение.

Parameters:
yndarray

Массив значений y.

ignorebool, optional
  • При True, игнорировать существующие границы прямоугольника Bbox.
  • При False, учитывать существующие границы прямоугольника Bbox.
  • При None, использовать последнее значение, переданное в ignore().
update_from_path(path, ignore=None, updatex=True, updatey=True)[source]

Обновить границы Bbox так, чтобы они содержали вершины заданного пути. После обновления границы будут иметь положительную width и height; x0 и y0 будут минимальными значениями.

Параметры:
pathPath
ignorebool, необязательно
  • При True, игнорировать существующие границы Bbox.
  • При False, включить существующие границы Bbox.
  • При None, использовать последнее переданное значение для ignore().
updatex, updateybool, по умолчанию: True

При True, обновить значения x/y.

propertyx0

Первая из пары координат x, определяющих прямоугольник.

Не гарантируется, что будет меньше x1 (для этого используйте xmin).

propertyx1

Вторая из пары координат x, определяющих прямоугольник.

Не гарантируется, что будет больше x0 (для этого используйте xmax).

propertyy0

Первая из пары координат y, определяющих прямоугольник.

Не гарантируется, что будет меньше y1 (для этого используйте ymin).

propertyy1

Вторая из пары координат y, определяющих прямоугольник.

Не гарантируется, что будет больше y0 (для этого используйте ymax).

classmatplotlib.transforms.BboxBase(shorthand_name=None)[source]

Bases: TransformNode

Базовый класс всех ограничивающих прямоугольников.

Этот класс неизменяемый; Bbox — это изменяемый подкласс.

Каноническое представление — это две точки без ограничений на их порядок. Предоставляются удобные свойства для получения левой, нижней, правой и верхней границ, а также ширины и высоты, но они не хранятся явно.

Параметры:
shorthand_namestr

Строка, представляющая «имя» преобразования. Имя не имеет никакого значения, кроме улучшения удобочитаемости str(transform) при DEBUG=True.

anchored(c, container=None)[source]

Возвращает копию Bbox, привязанную к c в пределах container.

Параметры:
c(float, float) или {'C', 'SW', 'S', 'SE', 'E', 'NE', ...}

Пара (x, y) относительных координат (0 — слева или снизу, 1 — справа или сверху), 'C' (центр) или направление по сторонам света ('SW' — юго-запад, это нижний левый угол и т. д.).

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

Прямоугольник, внутри которого позиционируется Bbox.

См. также

Axes.set_anchor
propertybounds

Возвращает (x0, y0, width, height).

coefs={'C': (0.5, 0.5), 'E': (1.0, 0.5), 'N': (0.5, 1.0), 'NE': (1.0, 1.0), 'NW': (0, 1.0), 'S': (0.5, 0), 'SE': (1.0, 0), 'SW': (0, 0), 'W': (0, 0.5)}
contains(x, y)[source]

Возвращает, лежит ли (x, y) внутри ограничивающего прямоугольника или на его границе.

containsx(x)[source]

Возвращает, находится ли x в замкнутом интервале (x0, x1).

containsy(y)[source]

Возвращает, находится ли y в замкнутом интервале (y0, y1).

corners()[source]

Возвращает углы этого прямоугольника в виде массива точек.

Конкретно, это возвращает массив [[x0, y0], [x0, y1], [x1, y0], [x1, y1]].

count_contains(vertices)[source]

Подсчитывает количество вершин, содержащихся в Bbox. Любые вершины с нечисловыми значениями x или y игнорируются.

Параметры:
vertices(N, 2) массив
count_overlaps(bboxes)[source]

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

Параметры:
bboxesпоследовательность BboxBase
expanded(sw, sh)[source]

Создает Bbox, расширяя этот прямоугольник вокруг центра на коэффициенты sw и sh.

propertyextents

Возвращает (x0, y0, x1, y1).

frozen()[source]

Базовый класс для всего, что участвует в дереве преобразований и нуждается в обновлении своих родителей или в обновлении.

Это включает классы, которые на самом деле не являются преобразованиями, такие как ограничивающие прямоугольники, поскольку некоторые преобразования зависят от ограничивающих прямоугольников для вычисления своих значений.

fully_contains(x, y)[source]

Возвращает, находится ли x, y внутри ограничивающего прямоугольника, но не на его границе.

fully_containsx(x)[source]

Возвращает значение истины, если x находится в открытом интервале (x0, x1).

fully_containsy(y)[source]

Возвращает значение истины, если y находится в открытом интервале (y0, y1).

fully_overlaps(other)[source]

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

Параметры:
otherBboxBase
get_points()[source]
propertyheight

Высота (со знаком) прямоугольника.

staticintersection(bbox1, bbox2)[source]

Возвращает пересечение bbox1 и bbox2, если они пересекаются, или None, если нет.

propertyintervalx

Пара x-координат, определяющих прямоугольник.

Не гарантируется, что они отсортированы слева направо.

propertyintervaly

Пара y-координат, определяющих прямоугольник.

Не гарантируется, что они отсортированы снизу вверх.

is_affine=True
is_bbox=True
propertymax

Правый верхний угол прямоугольника.

propertymin

Левый нижний угол прямоугольника.

overlaps(other)[source]

Возвращает значение истины, если этот прямоугольник перекрывается с другим прямоугольником.

Параметры:
otherBboxBase
propertyp0

Первая пара (x, y) координат, определяющих прямоугольник.

Не гарантируется, что это левый нижний угол (для этого используйте min).

propertyp1

Вторая пара (x, y) координат, определяющих прямоугольник.

Не гарантируется, что это правый верхний угол (для этого используйте max).

padded(w_pad, h_pad=None)[source]

Создает Bbox путём добавления отступа со всех четырёх сторон к этому прямоугольнику.

Параметры:
w_padfloat

Отступ по ширине

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

Отступ по высоте. По умолчанию равен w_pad.

rotated(radians)[source]

Возвращает прямоугольник, ограниченный результатом поворота этого Bbox на угол radians.

shrunk(mx, my)[source]

Возвращает копию Bbox, сжатую на коэффициент mx по оси x и коэффициент my по оси y. Левый нижний угол прямоугольника остаётся неизменным. Обычно mx и my будут меньше 1, но это не является обязательным.

shrunk_to_aspect(box_aspect, container=None, fig_aspect=1.0)[source]

Возвращает копию Bbox, сжатую до желаемого соотношения сторон, box_aspect. Если координаты прямоугольника относительные (т.е. доли от большего прямоугольника, например, фигуры), то физическое соотношение сторон этой фигуры задаётся параметром fig_aspect, так что box_aspect можно задавать как отношение абсолютных размеров, а не относительных.

propertysize

Ширина и высота прямоугольника (со знаком).

END_OF_DOCUMENT_MARKER
splitx(*args)[source]

Возвращает список новых объектов Bbox, сформированных путем разделения исходного объекта вертикальными линиями в дробных позициях, заданных параметром args.

splity(*args)[source]

Возвращает список новых объектов Bbox, сформированных путем разделения исходного объекта горизонтальными линиями в дробных позициях, заданных параметром args.

transformed(transform)[source]

Создаёт Bbox путем статического преобразования этого объекта с помощью transform.

translated(tx, ty)[source]

Создаёт Bbox путем перевода этого объекта на tx и ty.

staticunion(bboxes)[source]

Возвращает Bbox, содержащий все заданные bboxes.

propertywidth

Ширина области, ограниченной прямоугольником.

propertyx0

Первая из пары координат x, определяющих область, ограниченную прямоугольником.

Не гарантируется, что она будет меньше x1 (для этого используйте xmin).

propertyx1

Вторая из пары координат x, определяющих область, ограниченную прямоугольником.

Не гарантируется, что она будет больше x0 (для этого используйте xmax).

propertyxmax

Правый край области, ограниченной прямоугольником.

propertyxmin

Левый край области, ограниченной прямоугольником.

propertyy0

Первая из пары координат y, определяющих область, ограниченную прямоугольником.

Не гарантируется, что она будет меньше y1 (для этого используйте ymin).

propertyy1

Вторая из пары координат y, определяющих область, ограниченную прямоугольником.

Не гарантируется, что она будет больше y0 (для этого используйте ymax).

propertyymax

Верхний край области, ограниченной прямоугольником.

propertyymin

Нижний край области, ограниченной прямоугольником.

classmatplotlib.transforms.BboxTransform(boxin, boxout, **kwargs)[source]

Bases: Affine2DBase

BboxTransform линейно преобразует точки из одной области, ограниченной прямоугольником, в другую.

Создаёт новый BboxTransform, который линейно преобразует точки из boxin в boxout.

get_matrix()[source]

Получает матрицу для аффинной части этого преобразования.

is_separable=True

True, если это преобразование разделимо по осям x и y.

классmatplotlib.transforms.BboxTransformFrom(boxin, **kwargs)[source]

Базы: Affine2DBase

BboxTransformFrom линейно преобразует точки из заданного Bbox в единичный прямоугольник.

Параметры:
shorthand_namestr

Строка, представляющая «имя» преобразования. Имя не имеет никакого значения, кроме повышения удобочитаемости str(transform) при DEBUG=True.

get_matrix()[source]

Получить матрицу для аффинной части этого преобразования.

is_separable=True

True, если это преобразование разделимо по осям x и y.

классmatplotlib.transforms.BboxTransformTo(boxout, **kwargs)[source]

Базы: Affine2DBase

BboxTransformTo — это преобразование, которое линейно преобразует точки из единичного прямоугольника в заданный Bbox.

Создать новое BboxTransformTo, которое линейно преобразует точки из единичного прямоугольника в boxout.

get_matrix()[source]

Получить матрицу для аффинной части этого преобразования.

is_separable=True

True, если это преобразование разделимо по осям x и y.

классmatplotlib.transforms.BboxTransformToMaxOnly(boxout, **kwargs)[source]

Базы: BboxTransformTo

BboxTransformTo — это преобразование, которое линейно преобразует точки из единичного прямоугольника в заданный Bbox с фиксированным верхним левым углом (0, 0).

Создать новое BboxTransformTo, которое линейно преобразует точки из единичного прямоугольника в boxout.

get_matrix()[source]

Получить матрицу для аффинной части этого преобразования.

классmatplotlib.transforms.BlendedAffine2D(x_transform, y_transform, **kwargs)[source]

Базы: _BlendedMixin, Affine2DBase

«Смешанное» преобразование использует одно преобразование для оси x и другое преобразование для оси y.

Этот вариант является оптимизацией для случая, когда оба дочерних преобразования являются типа Affine2DBase.

Создать новое «смешанное» преобразование, используя x_transform для преобразования оси x и y_transform для преобразования оси y.

И x_transform, и y_transform должны быть 2D аффинными преобразованиями.

Как правило, вы не будете вызывать этот конструктор напрямую, а воспользуетесь функцией blended_transform_factory, которая может автоматически определить, какой тип смешанного преобразования создать.

get_matrix()[source]

Получить матрицу для аффинной части этого преобразования.

is_separable=True

True, если это преобразование разделимо по осям x и y.

END_OF_DOCUMENT_MARKER
classmatplotlib.transforms.BlendedGenericTransform(x_transform, y_transform, **kwargs)[source]

Bases: _BlendedMixin, Transform

Аффинное преобразование, использующее одно преобразование для оси x и другое для оси y.

Этот «обобщенный» вариант может обрабатывать любые заданные дочерние преобразования в направлениях x и y.

Создаёт новое аффинное преобразование, используя x_transform для преобразования оси x и y_transform для преобразования оси y.

Как правило, вы не будете вызывать этот конструктор напрямую, а будете использовать функцию blended_transform_factory, которая может автоматически определить, какой вид смешанного преобразования создать.

contains_branch(other)[source]

Возвращает значение, указывающее, является ли заданное преобразование поддеревом этого преобразования.

Эта функция использует равенство преобразований для определения поддеревьев, поэтому во многих ситуациях будет использоваться идентификатор объекта.

В случае, когда заданное преобразование представляет собой всё это преобразование, возвращает True.

propertydepth

Возвращает количество преобразований, которые были объединены для формирования этого объекта преобразования.

Примечание

В случае специального преобразования Composite возвращается максимальная глубина из двух.

frozen()[source]

Возвращает замороженную копию этого узла преобразования. Замороженная копия не будет обновляться при изменении ее дочерних элементов. Полезно для хранения ранее известного состояния преобразования, где copy.deepcopy() может быть обычно использован.

get_affine()[source]

Получить аффинную часть этого преобразования.

propertyhas_inverse

bool(x) -> bool

Возвращает True, если аргумент x истинный, и False в противном случае. Встроенные True и False являются единственными двумя экземплярами класса bool. Класс bool является подклассом класса int и не может быть подклассифицирован.

input_dims=2

Число входных измерений этого преобразования. Должно быть переопределено (целыми числами) в подклассе.

inverted()[source]

Возвращает соответствующее обратное преобразование.

Он хранит x == self.inverted().transform(self.transform(x)).

Результат работы этого метода следует рассматривать как временный. Обновление self не приводит к соответствующему обновлению его инвертированной копии.

propertyis_affine

bool(x) -> bool

Возвращает True, если аргумент x истинный, и False в противном случае. Встроенные True и False являются единственными двумя экземплярами класса bool. Класс bool является подклассом класса int и не может быть подклассифицирован.

is_separable=True

True, если это преобразование разделяемо по измерениям x и y.

output_dims=2

Число выходных измерений этого преобразования. Должно быть переопределено (целыми числами) в подклассе.

pass_through=True

Если pass_through равно True, все предки будут всегда аннулироваться, даже если 'self' уже аннулирован.

transform_non_affine(values)[source]

Применяет только неаффинную часть этого преобразования.

transform(values) всегда эквивалентно transform_affine(transform_non_affine(values)).

В неаффинных преобразованиях это обычно эквивалентно transform(values). В аффинных преобразованиях это всегда недействие.

Параметры:
valuesмассив

Входящие значения как массив длины input_dims или форма (N, input_dims).

Возвращает:
массив

Выходные значения как массив длины output_dims или форма (N, output_dims), в зависимости от входных данных.

classmatplotlib.transforms.CompositeAffine2D(a, b, **kwargs)[source]

Bases: Affine2DBase

Составное преобразование, образованное применением преобразования a, а затем преобразования b.

Этот вариант — оптимизация, которая обрабатывает случай, когда оба a и b являются 2D-аффинными преобразованиями.

Создаёт новое составное преобразование, которое является результатом применения Affine2DBase a, а затем Affine2DBase b.

Как правило, вы не будете вызывать этот конструктор напрямую, а напишете a + b вместо этого, что автоматически выберет лучший вид экземпляра составного преобразования для создания.

propertydepth

Возвращает количество преобразований, которые были объединены для формирования этого объекта преобразования.

Примечание

В случае специального преобразования Composite возвращается максимальная глубина из двух.

get_matrix()[source]

Получить матрицу для аффинной части этого преобразования.

END_OF_DOCUMENT_MARKER
classmatplotlib.transforms.CompositeGenericTransform(a, b, **kwargs)[source]

Bases: Transform

Составной преобразователь, образованный применением преобразователя a, а затем преобразователя b.

Этот «обобщённый» вариант может обрабатывать любые два произвольных преобразования.

Создаёт новый составной преобразователь, являющийся результатом применения преобразователя a, а затем преобразователя b.

Обычно вы не будете вызывать этот конструктор напрямую, но напишете a + b вместо этого, что автоматически выберет лучший вид экземпляра составного преобразователя для создания.

propertydepth

Возвращает количество преобразований, которые были объединены для формирования этого экземпляра преобразователя.

Примечание

В случае специального преобразования Composite возвращается максимальная глубина из двух.

frozen()[source]

Возвращает замороженную копию этого узла преобразования. Замороженная копия не будет обновляться при изменении её дочерних элементов. Полезно для сохранения ранее известного состояния преобразования, когда copy.deepcopy() обычно может использоваться.

get_affine()[source]

Получить аффинную часть этого преобразования.

propertyhas_inverse

bool(x) -> bool

Возвращает True, если аргумент x истинен, иначе False. Встроенные True и False — единственные два экземпляра класса bool. Класс bool является подклассом класса int и не может быть подклассирован.

inverted()[source]

Возвращает соответствующее обратное преобразование.

Он содержит x == self.inverted().transform(self.transform(x)).

Значение, возвращаемое этим методом, следует рассматривать как временное. Обновление self не вызывает соответствующее обновление его инвертированной копии.

propertyis_affine

bool(x) -> bool

Возвращает True, если аргумент x истинен, иначе False. Встроенные True и False — единственные два экземпляра класса bool. Класс bool является подклассом класса int и не может быть подклассирован.

propertyis_separable

bool(x) -> bool

Возвращает True, если аргумент x истинен, иначе False. Встроенные True и False — единственные два экземпляра класса bool. Класс bool является подклассом класса int и не может быть подклассирован.

pass_through=True

Если pass_through равен True, все предки всегда будут недействительными, даже если 'self' уже недействителен.

transform_affine(values)[source]

Применить только аффинную часть этого преобразования к заданному массиву значений.

transform(values) всегда эквивалентно transform_affine(transform_non_affine(values)).

В неаффинных преобразованиях это, как правило, бесполезная операция. В аффинных преобразованиях это эквивалентно transform(values).

Parameters:
valuesarray

Входные значения в виде массива длиной input_dims или формы (N, input_dims).

Returns:
array

Выходные значения в виде массива длиной output_dims или формы (N, output_dims), в зависимости от входных данных.

transform_non_affine(values)[source]

Применить только неаффинную часть этого преобразования.

transform(values) всегда эквивалентно transform_affine(transform_non_affine(values)).

В неаффинных преобразованиях это, как правило, эквивалентно transform(values). В аффинных преобразованиях это всегда бесполезная операция.

Parameters:
valuesarray

Входные значения в виде массива длиной input_dims или формы (N, input_dims).

Returns:
array

Выходные значения в виде массива длиной output_dims или формы (N, output_dims), в зависимости от входных данных.

transform_path_non_affine(path)[source]

Применить неаффинную часть этого преобразования к Path path, возвращая новый Path.

transform_path(path) эквивалентно transform_path_affine(transform_path_non_affine(values)).

classmatplotlib.transforms.IdentityTransform(*args, **kwargs)[source]

Bases: Affine2DBase

Специальный класс, который выполняет операцию тождественного преобразования очень быстро.

Параметры:
shorthand_namestr

Строка, представляющая "имя" преобразования. Имя не имеет значения, кроме повышения читабельности str(transform) при DEBUG=True.

frozen()[source]

Возвращает замороженную копию этого узла преобразования. Замороженная копия не будет обновляться при изменении ее дочерних элементов. Полезно для сохранения ранее известного состояния преобразования, где copy.deepcopy() обычно может использоваться.

get_affine()[source]

Получить аффинную часть этого преобразования.

get_matrix()[source]

Получить матрицу для аффинной части этого преобразования.

inverted()[source]

Возвращает соответствующее обратное преобразование.

В ней хранится x == self.inverted().transform(self.transform(x)).

Результат этого метода следует рассматривать как временный. Обновление self не приводит к соответствующему обновлению его инвертированной копии.

transform(values)[source]

Применить это преобразование к заданному массиву values.

Параметры:
valuesarray-like

Входные значения как массив длины input_dims или формы (N, input_dims).

Возвращает:
массив

Выходные значения как массив длины output_dims или формы (N, output_dims), в зависимости от входных данных.

transform_affine(values)[source]

Применить только аффинную часть этого преобразования к заданному массиву значений.

transform(values) всегда эквивалентно transform_affine(transform_non_affine(values)).

В неаффинных преобразованиях это обычно является пустой операцией. В аффинных преобразованиях это эквивалентно transform(values).

Параметры:
valuesмассив

Входные значения как массив длины input_dims или формы (N, input_dims).

Возвращает:
массив

Выходные значения как массив длины output_dims или формы (N, output_dims), в зависимости от входных данных.

transform_non_affine(values)[source]

Применить только неаффинную часть этого преобразования.

transform(values) всегда эквивалентно transform_affine(transform_non_affine(values)).

В неаффинных преобразованиях это обычно эквивалентно transform(values). В аффинных преобразованиях это всегда пустая операция.

Параметры:
valuesмассив

Входные значения как массив длины input_dims или формы (N, input_dims).

Возвращает:
массив

Выходные значения как массив длины output_dims или формы (N, output_dims), в зависимости от входных данных.

transform_path(path)[source]

Применить преобразование к Path path, возвращая новый Path.

В некоторых случаях это преобразование может вставить кривые в путь, который начинался как отрезки прямых.

transform_path_affine(path)[source]

Применить аффинную часть этого преобразования к Path path, возвращая новый Path.

transform_path(path) эквивалентно transform_path_affine(transform_path_non_affine(values)).

transform_path_non_affine(path)[source]

Применить неаффинную часть этого преобразования к Path path, возвращая новый Path.

transform_path(path) эквивалентно transform_path_affine(transform_path_non_affine(values)).

classmatplotlib.transforms.LockableBbox(bbox, x0=None, y0=None, x1=None, y1=None, **kwargs)[source]

Bases: BboxBase

A Bbox, где некоторые элементы могут быть заблокированы на определённых значениях.

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

Parameters:
bboxBbox

Оборачиваемый дочерний прямоугольник.

x0float or None

Заблокированное значение для x0, или None для разблокировки.

y0float or None

Заблокированное значение для y0, или None для разблокировки.

x1float or None

Заблокированное значение для x1, или None для разблокировки.

y1float or None

Заблокированное значение для y1, или None для разблокировки.

get_points()[source]
propertylocked_x0

float or None: Значение, используемое для заблокированного x0.

propertylocked_x1

float or None: Значение, используемое для заблокированного x1.

propertylocked_y0

float or None: Значение, используемое для заблокированного y0.

propertylocked_y1

float or None: Значение, используемое для заблокированного y1.

classmatplotlib.transforms.ScaledTranslation(xt, yt, scale_trans, **kwargs)[source]

Bases: Affine2DBase

Преобразование, которое перемещает на xt и yt, после того, как xt и yt были преобразованы с помощью scale_trans.

Parameters:
shorthand_namestr

Строка, представляющая «имя» преобразования. Имя не имеет никакого значения, кроме улучшения читаемости str(transform) при DEBUG=True.

get_matrix()[source]

Получить матрицу для аффинной части этого преобразования.

classmatplotlib.transforms.Transform(shorthand_name=None)[source]
END_OF_DOCUMENT_MARKER

Базовые классы: TransformNode

Базовый класс всех экземпляров TransformNode, которые фактически выполняют преобразование.

Все неаффинные преобразования должны быть подклассами этого класса. Новые аффинные преобразования должны быть подклассами Affine2D.

Подклассы этого класса должны переопределить следующие члены (как минимум):

  • input_dims
  • output_dims
  • transform()
  • inverted() (если обратное преобразование существует)

Следующие атрибуты можно переопределить, если значение по умолчанию не подходит:

  • is_separable (по умолчанию True для преобразований 1D -> 1D, иначе False)
  • has_inverse (по умолчанию True, если inverted() переопределен, иначе False)

Если преобразование должно выполнять нестандартные действия с объектами matplotlib.path.Path, такие как добавление кривых там, где раньше были отрезки прямых, оно должно переопределить:

  • transform_path()
Параметры:
shorthand_namestr

Строка, представляющая «имя» преобразования. Имя не имеет особого значения, кроме как улучшает удобочитаемость str(transform) при DEBUG=True.

__add__(other)[source]

Комбинирует два преобразования, так что self следует за other.

A + B возвращает преобразование C так, что C.transform(x) == B.transform(A.transform(x)).

__sub__(other)[source]

Комбинирует self с обратным other, отменяя одинаковые элементы, если таковые имеются:

# In general:
A - B == A + B.inverted()
# (but see note regarding frozen transforms below).

# If A "ends with" B (i.e. A == A' + B for some A') we can cancel
# out B:
(A' + B) - B == A'

# Likewise, if B "starts with" A (B = A + B'), we can cancel out A:
A - (A + B') == B'.inverted() == B'^-1

Отмена (вместо простого возврата A + B.inverted()) важна по нескольким причинам:

  • Это предотвращает неточности с плавающей запятой при вычислении обратного преобразования B: B - B гарантированно будет полностью отменён (результатом будет тождественное преобразование), тогда как B + B.inverted() может отличаться на небольшую величину эпсилон.
  • B.inverted() всегда возвращает замороженное преобразование: если вычислить A + B + B.inverted() и затем изменить B, то B.inverted() не будет обновлён, а последние два члена больше не отменятся; с другой стороны, A + B - B всегда будет равно A, даже если B изменяется.
contains_branch(other)[source]

Возвращает, является ли данное преобразование поддеревом этого преобразования.

Эта функция использует равенство преобразований для идентификации поддеревьев, поэтому во многих ситуациях будет использоваться идентификатор объекта.

В случае, когда данное преобразование представляет собой всё это преобразование, возвращает True.

contains_branch_seperately(other_transform)[source]

Возвращает, является ли данное поддерево поддеревом этого преобразования в каждом измерении по отдельности.

Частое применение этого метода — определение того, является ли преобразование смешанным преобразованием, содержащим преобразование данных осей. Например:

x_isdata, y_isdata = trans.contains_branch_seperately(ax.transData)
propertydepth

Возвращает количество преобразований, которые были объединены для формирования этого экземпляра Transform.

Примечание

В особом случае с преобразованием Composite возвращается максимальная глубина двух преобразований.

get_affine()[source]

Получает аффинную часть этого преобразования.

get_matrix()[source]

Возвращает матрицу аффинной части этого преобразования.

has_inverse=False

True, если у этого преобразования есть соответствующее обратное преобразование.

input_dims=None

Количество входных измерений этого преобразования. Должно быть переопределено (целыми числами) в подклассе.

inverted()[source]

Возвращает соответствующее обратное преобразование.

Содержит x == self.inverted().transform(self.transform(x)).

Значение, возвращаемое этим методом, следует рассматривать как временное. Обновление self не вызывает соответствующего обновления его обратного копии.

is_separable=False

True, если это преобразование разделимо по осям x и y.

output_dims=None

Количество выходных измерений этого преобразования. Должно быть переопределено (целыми числами) в подклассе.

transform(values)[source]

Применяет это преобразование к заданному массиву значений.

Параметры:
valuesarray-like

Входные значения в виде массива длины input_dims или формы (N, input_dims).

Возвращает:
массив

Выходные значения в виде массива длины output_dims или формы (N, output_dims), в зависимости от входных данных.

transform_affine(values)[source]

Применить только аффинную часть этого преобразования к данному массиву значений.

transform(values) всегда эквивалентно transform_affine(transform_non_affine(values)).

В неаффинных преобразованиях это обычно операция без действия. В аффинных преобразованиях это эквивалентно transform(values).

Параметры:
valuesarray

Входные значения в виде массива длиной input_dims или формы (N, input_dims).

Возвращает:
array

Выходные значения в виде массива длиной output_dims или формы (N, output_dims), в зависимости от входных данных.

transform_angles(angles, pts, radians=False, pushoff=1e-05)[source]

Преобразовать набор углов, привязанных к определенным местоположениям.

Параметры:
angles(N,) array-like

Углы для преобразования.

pts(N, 2) array-like

Точки, в которых прикреплены углы.

radiansbool, default: False

Являются ли angles радианами или градусами.

pushofffloat

Для каждой точки в pts и угла в angles преобразованный угол вычисляется путем преобразования сегмента длиной pushoff, начинающегося в этой точке и образующего этот угол относительно горизонтальной оси, и измерения угла между горизонтальной осью и преобразованным сегментом.

Возвращает:
(N,) array
transform_bbox(bbox)[source]

Преобразовать заданный ограничивающий прямоугольник.

Для более сложных преобразований, включая кэширование (распространенное требование в Matplotlib), см. TransformedBbox.

transform_non_affine(values)[source]

Применить только неаффинную часть этого преобразования.

transform(values) всегда эквивалентно transform_affine(transform_non_affine(values)).

В неаффинных преобразованиях это обычно эквивалентно transform(values). В аффинных преобразованиях это всегда операция без действия.

Параметры:
valuesarray

Входные значения в виде массива длиной input_dims или формы (N, input_dims).

Возвращает:
array

Выходные значения в виде массива длиной output_dims или формы (N, output_dims), в зависимости от входных данных.

transform_path(path)[source]

Применить преобразование к Path path, возвращая новый Path.

В некоторых случаях это преобразование может вставлять кривые в путь, который начинался как отрезки линии.

transform_path_affine(path)[source]

Применить аффинную часть этого преобразования к Path path, возвращая новый Path.

transform_path(path) эквивалентно transform_path_affine(transform_path_non_affine(values)).

transform_path_non_affine(path)[source]

Применить неаффинную часть этого преобразования к Path path, возвращая новый Path.

transform_path(path) эквивалентно transform_path_affine(transform_path_non_affine(values)).

transform_point(point)[source]

Возвращает преобразованную точку.

Эта функция сохраняется только для обратной совместимости; более общий метод transform способен преобразовывать как список точек, так и одну точку.

Точка задается как последовательность длиной input_dims. Преобразованная точка возвращается как последовательность длиной output_dims.

classmatplotlib.transforms.TransformNode(shorthand_name=None)[source]

Bases: object

Базовый класс для всего, что участвует в дереве преобразований и должно делать свои родительские элементы недействительными или быть отмечено как недействительное. Это включает классы, которые на самом деле не являются преобразованиями, такие как ограничивающие прямоугольники, поскольку некоторые преобразования зависят от ограничивающих прямоугольников для вычисления своих значений.

Параметры:
shorthand_namestr

Строка, представляющая «имя» преобразования. Имя не имеет никакого значения, кроме улучшения удобочитаемости str(transform) при DEBUG=True.

INVALID=3
INVALID_AFFINE=2
INVALID_NON_AFFINE=1
frozen()[source]

Возвращает замороженную копию этого узла преобразования. Замороженная копия не будет обновляться при изменении дочерних элементов. Полезно для хранения ранее известного состояния преобразования, где copy.deepcopy() обычно используется.

invalidate()[source]

Делает этот TransformNode недействительным и инициирует аннулирование предков. Должно вызываться всякий раз, когда преобразование изменяется.

is_affine=False
is_bbox=False
pass_through=False

Если pass_through имеет значение True, все предки всегда будут отмечены как недействительные, даже если «self» уже недействителен.

set_children(*children)[source]

Устанавливает дочерние элементы преобразования, чтобы система аннулирования знала, какие преобразования могут сделать это преобразование недействительным. Должно вызываться из конструктора любых преобразований, которые зависят от других преобразований.

classmatplotlib.transforms.TransformWrapper(child)[source]

Bases: Transform

Вспомогательный класс, который хранит единственное дочернее преобразование и действует аналогично ему.

Это полезно, если узел дерева преобразований необходимо заменить во время выполнения преобразованием другого типа. Этот класс позволяет этому замещению правильно инициировать аннулирование.

Экземпляры TransformWrapper должны иметь одинаковые входные и выходные размеры на протяжении всего их жизненного цикла, поэтому дочернее преобразование может быть заменено только другим дочерним преобразованием с теми же размерами.

child: Экземпляр Transform. Это дочернее преобразование позже может быть заменено с помощью set().

frozen()[source]

Возвращает замороженную копию этого узла преобразования. Замороженная копия не будет обновляться при изменении дочерних элементов. Полезно для хранения ранее известного состояния преобразования, где copy.deepcopy() обычно используется.

propertyhas_inverse

bool(x) -> bool

Возвращает True, если аргумент x истинный, в противном случае False. Встроенные True и False — единственные два экземпляра класса bool. Класс bool является подклассом класса int и не может быть подклассифицирован.

propertyinput_dims
propertyis_affine

bool(x) -> bool

Возвращает True, если аргумент x истинный, в противном случае False. Встроенные True и False — единственные два экземпляра класса bool. Класс bool является подклассом класса int и не может быть подклассифицирован.

propertyis_separable

bool(x) -> bool

Возвращает True, если аргумент x истинный, в противном случае False. Встроенные True и False — единственные два экземпляра класса bool. Класс bool является подклассом класса int и не может быть подклассифицирован.

propertyoutput_dims
pass_through=True

Если pass_through имеет значение True, все предки всегда будут отмечены как недействительные, даже если «self» уже недействителен.

set(child)[source]

Заменяет текущее дочернее преобразование другим.

Новый дочерний элемент должен иметь такое же количество входных и выходных размеров, что и текущий.

END_OF_DOCUMENT_MARKER
classmatplotlib.transforms.TransformedBbox(bbox, transform, **kwargs)[source]

Bases: BboxBase

A Bbox that is automatically transformed by a given transform. When either the child bounding box or transform changes, the bounds of this bbox will update accordingly.

Parameters:
bboxBbox
transformTransform
contains(x, y)[source]

Return whether (x, y) находится в области или на её границе.

fully_contains(x, y)[source]

Return whether x, y находится полностью в области, но не на её границе.

get_points()[source]
classmatplotlib.transforms.TransformedPatchPath(patch)[source]

Bases: TransformedPath

A TransformedPatchPath кэширует неаффинное преобразованную копию Patch. Эта кэшированная копия автоматически обновляется при изменении неаффинной части преобразования или объекта Patch.

Parameters:
patchPatch
classmatplotlib.transforms.TransformedPath(path, transform)[source]

Bases: TransformNode

A TransformedPath кэширует неаффинное преобразованную копию Path. Эта кэшированная копия автоматически обновляется при изменении неаффинной части преобразования.

Примечание

Объекты Path считаются неизменяемыми этим классом. Любые изменения вершин/кодов пути не вызовут перерасчёта преобразования.

Parameters:
pathPath
transformTransform
get_affine()[source]
get_fully_transformed_path()[source]

Возвращает полностью преобразованную копию пути.

get_transformed_path_and_affine()[source]

Возвращает копию пути, с уже применённой неаффинной частью преобразования, вместе с аффинной частью преобразования, необходимой для завершения преобразования.

get_transformed_points_and_affine()[source]

Возвращает копию пути, с уже применённой неаффинной частью преобразования, вместе с аффинной частью преобразования, необходимой для завершения преобразования. В отличие от get_transformed_path_and_affine(), интерполяция не будет выполнена.

matplotlib.transforms.blended_transform_factory(x_transform, y_transform)[source]

Создаёт новое "смешанное" преобразование, используя x_transform для преобразования оси x и y_transform для преобразования оси y.

Возвращает более быструю версию смешанного преобразования, если оба подчинённых преобразования аффинные.

matplotlib.transforms.composite_transform_factory(a, b)[source]

Создаёт новое составное преобразование, которое является результатом применения преобразования a, а затем преобразования b.

Короткие версии смешанного преобразования предоставлены для случая, когда оба подчинённых преобразования аффинные, или одно из них – тождественное преобразование.

Составные преобразования также могут быть созданы с помощью оператора '+', например:

c = a + b
matplotlib.transforms.interval_contains(interval, val)[source]

Проверка, включает ли интервал заданное значение.

Параметры:
interval(float, float)

Конечные точки интервала.

valfloat

Значение, которое нужно проверить на принадлежность интервалу.

Возвращаемое значение:
bool

Принадлежит ли val интервалу interval.

matplotlib.transforms.interval_contains_open(interval, val)[source]

Проверка, включает ли интервал заданное значение, исключая граничные точки.

Параметры:
interval(float, float)

Конечные точки интервала.

valfloat

Значение, которое нужно проверить на принадлежность интервалу.

Возвращаемое значение:
bool

Принадлежит ли val интервалу interval.

matplotlib.transforms.nonsingular(vmin, vmax, expander=0.001, tiny=1e-15, increasing=True)[source]

Модифицирует конечные точки диапазона для избежания особенностей.

Параметры:
vmin, vmaxfloat

Начальные конечные точки.

expanderfloat, по умолчанию: 0.001

Доля, на которую vmin и vmax расширяются, если исходный интервал слишком мал, в зависимости от tiny.

tinyfloat, по умолчанию: 1e-15

Порог для отношения интервала к максимальному абсолютному значению его конечных точек. Если интервал меньше этого значения, он будет расширен. Это значение должно быть около 1e-15 или больше; в противном случае интервал будет приближаться к пределу разрешения двойной точности.

increasingbool, по умолчанию: True

Если True, переставляет vmin, vmax, если vmin > vmax.

Возвращаемое значение:
vmin, vmaxfloat

Конечные точки, расширенные и/или переставленные, если необходимо. Если какой-либо из входов равен inf или NaN, или если оба входа равны 0 или очень близки к нулю, возвращает -expander, expander.

matplotlib.transforms.offset_copy(trans, fig=None, x=0.0, y=0.0, units='inches')[source]

Возвращает новый трансформ с добавленным смещением.

Параметры:
transTransform подкласс

Любой трансформ, к которому будет применено смещение.

figFigure, по умолчанию: None

Текущая фигура. Может быть None, если units — 'dots'.

x, yfloat, по умолчанию: 0.0

Смещение, которое нужно применить.

units{'inches', 'points', 'dots'}, по умолчанию: 'inches'

Единицы смещения.

Возвращаемое значение:
Transform подкласс

Трансформ со применённым смещением.

© 2012–2023 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.8.4/api/transformations.html

Spec-Zone.ru

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