Spec-Zone.ru › Matplotlib

matplotlib.transforms

Схема наследования matplotlib.transforms

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

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

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

../_images/transforms.png

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

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 аффинные преобразования выполняются с помощью 3x3 массива numpy:

a c e
b d f
0 0 1

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

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

Parameters:
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 равен true, 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).

Parameters:
valuesarray

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

Returns:
array

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

END_OF_DOCUMENT_MARKER ```
classmatplotlib.transforms.AffineBase(*args, **kwargs)[source]

Bases: Transform

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

Параметры:
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)).

classmatplotlib.transforms.AffineDeltaTransform(transform, **kwargs)[source]

Bases: Affine2DBase

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

Этот класс предназначен для преобразования перемещений («смещений положения») между парами точек (например, в качестве 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]

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

classmatplotlib.transforms.Bbox(points, **kwargs)[source]

Основания: 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 проигнорируют существующие границы Bbox.
  • При False, последующие вызовы update_from_data_xy будут включать существующие границы Bbox.
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 так, чтобы они содержали вершины предоставленной траектории. После обновления границы будут иметь положительную ширину и высоту; 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]

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

Parameters:
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]

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

Parameters:
otherBboxBase
propertyp0

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

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

propertyp1

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

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

padded(w_pad, h_pad=None)[source]

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

Parameters:
w_padfloat

Ширина отступа

h_padfloat, optional

Высота отступа. По умолчанию равна 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 линейно преобразует точки из одной области отображения Bbox в другую.

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

get_matrix()[source]

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

is_separable=True

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

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

Bases: Affine2DBase

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

Parameters:
shorthand_namestr

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

get_matrix()[source]

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

is_separable=True

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

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

Bases: Affine2DBase

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

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

get_matrix()[source]

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

is_separable=True

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

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

Bases: BboxTransformTo

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

Примечания

Устарело начиная с версии 3.9.

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

get_matrix()[source]

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

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

Bases: _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.

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

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

Примечание

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

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

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

Примечание

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

get_matrix()[source]

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

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

Bases: Transform

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

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

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

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

contains_branch_seperately(other_transform)[source]

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

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

x_isdata, y_isdata = trans.contains_branch_seperately(ax.transData)
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

Особый класс, который выполняет тождественное преобразование (identity transform) быстро.

Параметры:
shorthand_namestr

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

frozen()[source]

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

get_affine()[source]

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

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).

Параметры:
valuesarray

Входные значения в виде массива длины 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). В аффинных преобразованиях это всегда не операция.

Параметры:
valuesarray

Входные значения в виде массива длины 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 или None

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

y0float или None

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

x1float или None

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

y1float или None

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

get_points()[source]
propertylocked_x0

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

propertylocked_x1

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

propertylocked_y0

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

propertylocked_y1

float или 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]

Bases: 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()
Parameters:
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() может отличаться на небольшое значение epsilon.
  • 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]

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

Parameters:
valuesarray-like

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

Returns:
array

Выходные значения как массив длины 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_angles(angles, pts, radians=False, pushoff=1e-05)[source]

Преобразует набор углов, закреплённых в определённых точках.

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

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

pts(N, 2) array-like

Точки, где углы закреплены.

radiansbool, по умолчанию: False

Указывает, являются ли angles радианами или градусами.

pushofffloat

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

Возвращаемое значение:
(N,) массив
transform_bbox(bbox)[source]

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

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

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)).

transform_point(point)[source]

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

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

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

классmatplotlib.transforms.TransformNode(shorthand_name=None)[source]

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

Параметры:
shorthand_nameстрока

Строка, представляющая «имя» преобразования. Имя не имеет значения, кроме как для улучшения читаемости 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]

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

классmatplotlib.transforms.TransformWrapper(child)[source]

Базы: Transform

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

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

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

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

frozen()[source]

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

свойствоhas_inverse

bool(x) -> bool

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

свойствоinput_dims
свойствоis_affine

bool(x) -> bool

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

свойствоis_separable

bool(x) -> bool

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

свойствоoutput_dims
pass_through=True

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

set(child)[source]

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

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

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

Базы: BboxBase

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

Параметры:
bboxBbox
transformTransform
contains(x, y)[source]

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

fully_contains(x, y)[source]

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

get_points()[source]
классmatplotlib.transforms.TransformedPatchPath(patch)[source]

Базы: TransformedPath

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

Параметры:
patchPatch
классmatplotlib.transforms.TransformedPath(path, transform)[source]

Базы: TransformNode

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

Примечание

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

Параметры:
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/stable/api/transformations.html

Spec-Zone.ru

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