Spec-Zone.ru › Matplotlib 3.4

matplotlib.transforms

Inheritance diagram of matplotlib.transforms, matplotlib.path

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

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

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

../_images/transforms.png

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

full transform == non-affine part + affine part

От бэкендов не ожидается, что они будут обрабатывать неаффинные преобразования сами.

класс matplotlib.transforms.Affine2D(matrix=None, **kwargs)[исходный код]

Основы: matplotlib.transforms.Affine2DBase

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

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

a c e
b d f
0 0 1

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

__init__(matrix=None, **kwargs)[исходный код]

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

a c e
b d f
0 0 1

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

__module__ = 'matplotlib.transforms'
__str__()

Возвращает str(self).

clear()[исходный код]

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

статический from_values(a, b, c, d, e, f)[исходный код]

Создать новый объект Affine2D из заданных значений:

a c e
b d f
0 0 1

.

get_matrix()[исходный код]

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

a c e
b d f
0 0 1

.

статический identity()[исходный код]

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

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

rotate(theta)[исходный код]

Добавить поворот (в радианах) в это преобразование на месте.

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

rotate_around(x, y, theta)[исходный код]

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

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

rotate_deg(degrees)[исходный код]

Добавить поворот (в градусах) в это преобразование на месте.

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

rotate_deg_around(x, y, degrees)[исходный код]

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

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

scale(sx, sy=None)[исходный код]

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

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

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

set(other)[исходный код]

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

set_matrix(mtx)[исходный код]

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

a c e
b d f
0 0 1

.

END_OF_DOCUMENT_MARKER
skew(xShear, yShear)[исходный код]

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

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

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

skew_deg(xShear, yShear)[исходный код]

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

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

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

translate(tx, ty)[исходный код]

Добавить трансляцию.

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

класс matplotlib.transforms.Affine2DBase(*args, **kwargs)[исходный код]

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

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

a c e
b d f
0 0 1

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

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

Параметры:
shorthand_namestr

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

__module__ = 'matplotlib.transforms'
frozen()[исходный код]

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

has_inverse = True
input_dims = 2
inverted()[исходный код]

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

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

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

свойство is_separable

bool(x) -> bool

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

output_dims = 2
to_values()[исходный код]

Возвращает значения матрицы в виде кортежа NumPy.

transform_affine(points)[исходный код]

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

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

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

Параметры:
valuesarray

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

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

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

END_OF_DOCUMENT_MARKER ```
класс matplotlib.transforms.AffineBase(*args, **kwargs)[исходный код]

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

Параметры:
shorthand_namestr

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

__array__(*args, **kwargs)[исходный код]

Интерфейс массива для доступа к матрице преобразования.

__eq__(other)[исходный код]

Возвращает self==value.

__hash__ = None
__init__(*args, **kwargs)[исходный код]
Параметры:
shorthand_namestr

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

__module__ = 'matplotlib.transforms'
get_affine()[исходный код]

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

is_affine = True
transform(values)[исходный код]

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

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

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

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

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

transform_affine(values)[исходный код]

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

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

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

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

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

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

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

transform_non_affine(points)[исходный код]

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

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

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

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

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

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

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

transform_path(path)[исходный код]

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

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

transform_path_affine(path)[исходный код]

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

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

transform_path_non_affine(path)[исходный код]

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

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

END_OF_DOCUMENT_MARKER
класс matplotlib.transforms.AffineDeltaTransform(transform, **kwargs)[исходный код]

Базовые классы: matplotlib.transforms.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.

__init__(transform, **kwargs)[исходный код]
Параметры:
shorthand_namestr

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

__module__ = 'matplotlib.transforms'
__str__()

Возвращает str(self).

get_matrix()[исходный код]

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

класс matplotlib.transforms.Bbox(points, **kwargs)[исходный код]

Базовые классы: matplotlib.transforms.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

Массив numpy 2x2 вида [[x0, y0], [x1, y1]].

__format__(fmt)[исходный код]

Форматирование объекта по умолчанию.

__init__(points, **kwargs)[исходный код]
Параметры:
pointsndarray

Массив numpy 2x2 вида [[x0, y0], [x1, y1]].

__module__ = 'matplotlib.transforms'
__repr__()[исходный код]

Возвращает repr(self).

__str__()[исходный код]

Возвращает str(self).

свойство bounds

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

статический from_bounds(x0, y0, width, height)[исходный код]

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

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

статический from_extents(*args, minpos=None)[исходный код]

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

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

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

Четыре предельных значения прямоугольника.

minposfloat или None

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

get_points()[исходный код]

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

ignore(value)[исходный код]

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

valuebool
  • Если True, последующие вызовы update_from_data_xy() проигнорируют существующие границы Bbox.
  • Если False, последующие вызовы update_from_data_xy() будут учитывать существующие границы Bbox.
свойство intervalx

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

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

свойство intervaly

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

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

свойство minpos

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

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

свойство minposx

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

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

свойство minposy

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

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

mutated()[исходный код]

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

END_OF_DOCUMENT_MARKER
mutatedx()[исходный код]

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

mutatedy()[исходный код]

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

статический null()[исходный код]

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

свойство p0

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

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

свойство p1

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

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

set(other)[исходный код]

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

set_points(points)[исходный код]

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

статический unit()[исходный код]

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

update_from_data_xy(xy, ignore=None, updatex=True, updatey=True)[исходный код]

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

Параметры:
xyndarray

Массив numpy точек 2D.

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

Если True, обновлять значения x/y.

update_from_path(path, ignore=None, updatex=True, updatey=True)[исходный код]

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

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

Если True, обновлять значения x/y.

свойство x0

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

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

свойство x1

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

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

свойство y0

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

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

свойство y1

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

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

класс matplotlib.transforms.BboxBase(shorthand_name=None)[исходный код]

Основы: matplotlib.transforms.TransformNode

Базовый класс всех прямоугольных областей.

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

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

Параметры:
shorthand_namestr

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

__array__(*args, **kwargs)[исходный код]
__module__ = 'matplotlib.transforms'
anchored(c, container=None)[исходный код]

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

Параметры:
c(float, float) или str

Может быть:

  • Последовательностью (cx, cy), где cx и cy изменяются от 0 до 1, где 0 — слева или снизу, а 1 — справа или сверху
  • строкой: - 'C' для центрирования - 'S' для нижнего центра - 'SE' для нижнего левого угла - 'E' для левого и т.д.
containerBbox, необязательно

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

свойство bounds

Возвращает (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)[исходный код]

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

containsx(x)[исходный код]

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

containsy(y)[исходный код]

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

corners()[исходный код]

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

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

count_contains(vertices)[исходный код]

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

Параметры:
verticesМассив NumPy Nx2.
count_overlaps(bboxes)[исходный код]

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

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

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

свойство extents

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

frozen()[исходный код]

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

fully_contains(x, y)[исходный код]

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

fully_containsx(x)[исходный код]

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

fully_containsy(y)[исходный код]

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

fully_overlaps(other)[исходный код]

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

Параметры:
otherBboxBase
get_points()[исходный код]
свойствоheight

Высота (со знаком) области.

статическийintersection(bbox1, bbox2)[исходный код]

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

свойствоintervalx

Пара координат x, определяющих область.

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

свойствоintervaly

Пара координат y, определяющих область.

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

inverse_transformed(transform)[исходный код]

[Устарело] Создаёт Bbox путём статического преобразования этой области с использованием обратного преобразования transform.

Примечания

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

is_affine = True
is_bbox = True
свойствоmax

Правый верхний угол области.

свойствоmin

Левый нижний угол области.

overlaps(other)[исходный код]

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

Параметры:
otherBboxBase
свойствоp0

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

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

свойствоp1

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

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

padded(p)[исходный код]

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

rotated(radians)[исходный код]

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

shrunk(mx, my)[исходный код]

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

shrunk_to_aspect(box_aspect, container=None, fig_aspect=1.0)[исходный код]

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

свойствоsize

Ширина и высота (со знаком) области.

splitx(*args)[исходный код]

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

END_OF_DOCUMENT_MARKER
splity(*args)[исходный код]

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

transformed(transform)[исходный код]

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

translated(tx, ty)[исходный код]

Создаёт Bbox путём трансляции текущего объекта на tx и ty.

статический union(bboxes)[исходный код]

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

свойство width

Ширина области, задающей прямоугольную область.

свойство x0

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

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

свойство x1

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

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

свойство xmax

Правая граница области.

свойство xmin

Левая граница области.

свойство y0

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

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

свойство y1

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

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

свойство ymax

Верхняя граница области.

свойство ymin

Нижняя граница области.

класс matplotlib.transforms.BboxTransform(boxin, boxout, **kwargs)[исходный код]

Базовые классы: matplotlib.transforms.Affine2DBase

BboxTransform линейно преобразует точки из одной Bbox в другую.

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

__init__(boxin, boxout, **kwargs)[исходный код]

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

__module__ = 'matplotlib.transforms'
__str__()

Возвращает строковое представление объекта.

get_matrix()[исходный код]

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

is_separable = True
класс matplotlib.transforms.BboxTransformFrom(boxin, **kwargs)[исходный код]

Базовые классы: matplotlib.transforms.Affine2DBase

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

Параметры:
shorthand_namestr

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

__init__(boxin, **kwargs)[исходный код]
Параметры:
shorthand_namestr

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

__module__ = 'matplotlib.transforms'
__str__()

Возвращает str(self).

get_matrix()[исходный код]

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

is_separable = True
класс matplotlib.transforms.BboxTransformTo(boxout, **kwargs)[исходный код]

Базовые классы: matplotlib.transforms.Affine2DBase

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

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

__init__(boxout, **kwargs)[исходный код]

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

__module__ = 'matplotlib.transforms'
__str__()

Возвращает str(self).

get_matrix()[исходный код]

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

is_separable = True
класс matplotlib.transforms.BboxTransformToMaxOnly(boxout, **kwargs)[исходный код]

Базовые классы: matplotlib.transforms.BboxTransformTo

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

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

__module__ = 'matplotlib.transforms'
get_matrix()[исходный код]

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

класс matplotlib.transforms.BlendedAffine2D(x_transform, y_transform, **kwargs)[исходный код]

Базы: matplotlib.transforms._BlendedMixin, matplotlib.transforms.Affine2DBase

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

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

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

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

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

__init__(x_transform, y_transform, **kwargs)[исходный код]

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

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

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

__module__ = 'matplotlib.transforms'
get_matrix()[исходный код]

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

is_separable = True
класс matplotlib.transforms.BlendedGenericTransform(x_transform, y_transform, **kwargs)[исходный код]

Базовый класс: matplotlib.transforms._BlendedMixin, matplotlib.transforms.Transform

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

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

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

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

__init__(x_transform, y_transform, **kwargs)[исходный код]

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

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

__module__ = 'matplotlib.transforms'
contains_branch(other)[исходный код]

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

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

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

свойство depth

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

Примечание

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

frozen()[исходный код]

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

get_affine()[исходный код]

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

свойство has_inverse

bool(x) -> bool

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

input_dims = 2
inverted()[исходный код]

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

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

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

свойство is_affine

bool(x) -> bool

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

is_separable = True
output_dims = 2
pass_through = True
transform_non_affine(points)[исходный код]

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

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

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

Параметры:
значениямассив

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

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

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

класс matplotlib.transforms.CompositeAffine2D(a, b, **kwargs)[исходный код]

Базы: matplotlib.transforms.Affine2DBase

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

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

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

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

__init__(a, b, **kwargs)[исходный код]

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

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

__module__ = 'matplotlib.transforms'
__str__()

Возвращает str(self).

свойство depth

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

Примечание

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

get_matrix()[исходный код]

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

класс matplotlib.transforms.CompositeGenericTransform(a, b, **kwargs)[исходный код]

Базовый класс: matplotlib.transforms.Transform

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

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

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

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

__eq__(other)[исходный код]

Возвращает self==value.

__hash__ = None
__init__(a, b, **kwargs)[исходный код]

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

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

__module__ = 'matplotlib.transforms'
__str__()

Возвращает str(self).

свойство depth

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

Примечание

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

frozen()[исходный код]

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

get_affine()[исходный код]

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

свойство has_inverse

bool(x) -> bool

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

inverted()[исходный код]

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

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

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

свойство is_affine

bool(x) -> bool

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

свойство is_separable

bool(x) -> bool

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

pass_through = True
transform_affine(points)[исходный код]

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

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

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

Параметры:
значениямассив

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

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

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

transform_non_affine(points)[исходный код]

Применяет только неаффинное преобразование.

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

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

Параметры:
значениямассив

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

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

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

transform_path_non_affine(path)[исходный код]

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

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

класс matplotlib.transforms.IdentityTransform(*args, **kwargs)[исходный код]

Базовые классы: matplotlib.transforms.Affine2DBase

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

Параметры:
shorthand_namestr

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

__module__ = 'matplotlib.transforms'
__str__()

Возвращает str(self).

frozen()[исходный код]

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

get_affine()[исходный код]

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

get_matrix()[исходный код]

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

inverted()[исходный код]

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

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

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

transform(points)[исходный код]

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

Параметры:
valuesarray

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

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

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

transform_affine(points)[исходный код]

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

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

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

Параметры:
valuesarray

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

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

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

transform_non_affine(points)[исходный код]

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

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

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

Параметры:
valuesarray

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

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

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

transform_path(path)[исходный код]

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

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

transform_path_affine(path)[исходный код]

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

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

transform_path_non_affine(path)[исходный код]

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

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

END_OF_DOCUMENT_MARKER
класс matplotlib.transforms.LockableBbox(bbox, x0=None, y0=None, x1=None, y1=None, **kwargs)[исходный код]

Базовые классы: matplotlib.transforms.BboxBase

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

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

Параметры:
bboxBbox

Прямоугольник дочернего объекта для обёртки.

x0float или None

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

y0float или None

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

x1float или None

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

y1float или None

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

__init__(bbox, x0=None, y0=None, x1=None, y1=None, **kwargs)[исходный код]
Параметры:
bboxBbox

Прямоугольник дочернего объекта для обёртки.

x0float или None

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

y0float или None

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

x1float или None

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

y1float или None

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

__module__ = 'matplotlib.transforms'
__str__()

Возвращает str(self).

get_points()[исходный код]
свойство locked_x0

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

свойство locked_x1

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

свойство locked_y0

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

свойство locked_y1

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

класс matplotlib.transforms.ScaledTranslation(xt, yt, scale_trans, **kwargs)[исходный код]

Базовые классы: matplotlib.transforms.Affine2DBase

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

Параметры:
имя_короткой_записиstr

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

__init__(xt, yt, scale_trans, **kwargs)[исходный код]
Параметры:
имя_короткой_записиstr

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

__module__ = 'matplotlib.transforms'
__str__()

Возвращает str(self).

get_matrix()[исходный код]

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

класс matplotlib.transforms.Transform(shorthand_name=None)[исходный код]

Базовый класс всех экземпляров matplotlib.transforms.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)[исходный код]

Объединение двух преобразований так, что self выполняется перед other.

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

__array__(*args, **kwargs)[исходный код]

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

метод класса __init_subclass__()[исходный код]

Этот метод вызывается при создании подкласса.

Реализация по умолчанию ничего не делает. Ее можно переопределить для расширения подклассов.

__module__ = 'matplotlib.transforms'
__sub__(other)[исходный код]

Объединение 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)[исходный код]

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

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

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

contains_branch_seperately(other_transform)[исходный код]

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

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

x_isdata, y_isdata = trans.contains_branch_seperately(ax.transData)
свойство depth

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

Примечание

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

get_affine()[исходный код]

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

get_matrix()[исходный код]

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

has_inverse = False

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

input_dims = None

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

inverted()[исходный код]

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

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

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

is_separable = False

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

output_dims = None

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

END_OF_DOCUMENT_MARKER
transform(values)[исходный код]

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

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

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

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

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

transform_affine(values)[исходный код]

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

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

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

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

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

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

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

transform_angles(angles, pts, radians=False, pushoff=1e-05)[исходный код]

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

Параметры:
angles(N,) массивоподобный объект

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

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

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

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

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

pushofffloat

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

Возвращает:
(N,) массив
transform_bbox(bbox)[исходный код]

Преобразуйте заданную область.

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

transform_non_affine(values)[исходный код]

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

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

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

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

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

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

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

transform_path(path)[исходный код]

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

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

transform_path_affine(path)[исходный код]

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

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

transform_path_non_affine(path)[исходный код]

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

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

transform_point(point)[исходный код]

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

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

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

класс matplotlib.transforms.TransformNode(shorthand_name=None)[исходный код]

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

Параметры:
shorthand_namestr

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

INVALID = 3
INVALID_AFFINE = 2
INVALID_NON_AFFINE = 1
__copy__()[исходный код]
__deepcopy__(memo)[исходный код]
__dict__ = mappingproxy({'__module__': 'matplotlib.transforms', '__doc__': '\n Преобразование базы для всего, что участвует в дереве преобразований\n и требует недействительности своих родителей или быть недействительным. Это включает\n классы, которые на самом деле не являются преобразованиями, такие как ограничивающие прямоугольники, так как некоторые\n преобразования зависят от ограничивающих прямоугольников для вычисления своих значений.\n ', 'INVALID_NON_AFFINE': 1, 'INVALID_AFFINE': 2, 'INVALID': 3, 'is_affine': False, 'is_bbox': False, 'pass_through': False, '__init__': <function TransformNode.__init__>, '__getstate__': <function TransformNode.__getstate__>, '__setstate__': <function TransformNode.__setstate__>, '__copy__': <function TransformNode.__copy__>, '__deepcopy__': <function TransformNode.__deepcopy__>, 'invalidate': <function TransformNode.invalidate>, '_invalidate_internal': <function TransformNode._invalidate_internal>, 'set_children': <function TransformNode.set_children>, 'frozen': <function TransformNode.frozen>, '__dict__': <attribute '__dict__' of 'TransformNode' objects>, '__weakref__': <attribute '__weakref__' of 'TransformNode' objects>, '__annotations__': {}})
__getstate__()[исходный код]
__init__(shorthand_name=None)[исходный код]
Параметры:
shorthand_namestr

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

__module__ = 'matplotlib.transforms'
__setstate__(data_dict)[исходный код]
__weakref__

список слабых ссылок на объект (если определен)

frozen()[исходный код]

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

invalidate()[исходный код]

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

is_affine = False
is_bbox = False
pass_through = False

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

set_children(*children)[исходный код]

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

END_OF_DOCUMENT_MARKER
класс matplotlib.transforms.TransformWrapper(child)[исходный код]

Базовые классы: matplotlib.transforms.Transform

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

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

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

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

__eq__(other)[исходный код]

Возвращает self==value.

__hash__ = None
__init__(child)[исходный код]

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

__module__ = 'matplotlib.transforms'
__str__()

Возвращает str(self).

frozen()[исходный код]

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

свойство has_inverse

bool(x) -> bool

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

свойство is_affine

bool(x) -> bool

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

свойство is_separable

bool(x) -> bool

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

pass_through = True
set(child)[исходный код]

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

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

класс matplotlib.transforms.TransformedBbox(bbox, transform, **kwargs)[исходный код]

Базовые классы: matplotlib.transforms.BboxBase

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

Параметры:
bboxBbox
transformTransform
__init__(bbox, transform, **kwargs)[исходный код]
Параметры:
bboxBbox
transformTransform
__module__ = 'matplotlib.transforms'
__str__()

Возвращает str(self).

get_points()[исходный код]
класс matplotlib.transforms.TransformedPatchPath(patch)[исходный код]

Базы: matplotlib.transforms.TransformedPath

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

Параметры:
patchPatch
__init__(patch)[исходный код]
Параметры:
patchPatch
__module__ = 'matplotlib.transforms'
класс matplotlib.transforms.TransformedPath(path, transform)[исходный код]

Базы: matplotlib.transforms.TransformNode

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

Примечание

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

Параметры:
pathPath
transformTransform
__init__(path, transform)[исходный код]
Параметры:
pathPath
transformTransform
__module__ = 'matplotlib.transforms'
get_affine()[исходный код]
get_fully_transformed_path()[исходный код]

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

get_transformed_path_and_affine()[исходный код]

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

get_transformed_points_and_affine()[исходный код]

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

matplotlib.transforms.blended_transform_factory(x_transform, y_transform)[исходный код]

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

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

matplotlib.transforms.composite_transform_factory(a, b)[исходный код]

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

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

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

c = a + b
matplotlib.transforms.interval_contains(interval, val)[исходный код]

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

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

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

valfloat

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

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

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

matplotlib.transforms.interval_contains_open(interval, val)[исходный код]

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

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

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

valfloat

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

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

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

matplotlib.transforms.nonsingular(vmin, vmax, expander=0.001, tiny=1e-15, increasing=True)[исходный код]

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

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

Исходные конечные точки.

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

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

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

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

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

Если значение True, поменять местами vmin и vmax, если vmin > vmax.

Возвращает:
vmin, vmaxfloat

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

matplotlib.transforms.offset_copy(trans, fig=None, x=0.0, y=0.0, units='inches')[исходный код]

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

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

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

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

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

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

Применяемое смещение.

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

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

Возвращает:
Transform подкласс

Преобразование с применённым смещением.

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

Spec-Zone.ru

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