matplotlib.backends.backend_cairo
Cairo backend для matplotlib
| Автор: | Стив Чаплин и другие |
|---|
Этот бэкэнд зависит от cairocffi или pycairo.
-
class matplotlib.backends.backend_cairo.ArrayWrapper(**kwargs)[source] -
Базируется на
objectУстарело начиная с версии 3.0: Класс ArrayWrapper устарел в Matplotlib 3.0 и будет удалён в 3.2.
- Тонкий обертка вокруг numpy ndarray для экспонирования интерфейса
- ожидаемого cairocffi. В основном дублирует интерфейс array.array.
-
buffer_info()[source]
-
matplotlib.backends.backend_cairo.FigureCanvas -
Псевдоним для
matplotlib.backends.backend_cairo.FigureCanvasCairo
-
class matplotlib.backends.backend_cairo.FigureCanvasCairo(figure)[source] -
Базируется на
matplotlib.backend_bases.FigureCanvasBase-
print_pdf(fobj, *args, **kwargs)[source]
-
print_png(fobj, *args, **kwargs)[source]
-
print_ps(fobj, *args, **kwargs)[source]
-
print_raw(fobj, *args, **kwargs)
-
print_rgba(fobj, *args, **kwargs)[source]
-
print_svg(fobj, *args, **kwargs)[source]
-
print_svgz(fobj, *args, **kwargs)[source]
-
supports_blit = False
-
-
class matplotlib.backends.backend_cairo.GraphicsContextCairo(renderer)[source] -
Базируется на
matplotlib.backend_bases.GraphicsContextBase-
get_rgb()[source] -
Возвращает кортеж из трёх или четырёх чисел с плавающей точкой от 0 до 1.
-
restore()[source] -
Восстановление контекста графики из стека — необходимо только для бэкэндов, сохраняющих контексты графики в стеке.
-
set_alpha(alpha)[source] -
Установка значения альфа, используемого для смешивания — не поддерживается во всех бэкэндах. Если
alpha=None(значение по умолчанию), компоненты альфа переднего и заполняющего цвета будут использоваться для установки их прозрачности (по мере необходимости); иначе,alphaпереопределит их.
-
set_capstyle(cs)[source] -
Установка стиля обрезки в виде строки ('butt', 'round', 'projecting')
-
set_clip_path(path)[source] -
Установка обрезного пути и преобразования. Путь должен быть экземпляром
TransformedPath.
-
set_clip_rectangle(rectangle)[source] -
Установка обрезного прямоугольника с последовательностью (левый, нижний, ширина, высота)
-
set_dashes(offset, dashes)[source] -
Установка стиля пунктирной линии для gc.
Параметры: -
dash_offset : float -
смещение (обычно 0).
-
dash_list : array_like -
указывается последовательность включения-выключения как точки.
(None, None)указывает сплошную линию
-
-
set_foreground(fg, isRGBA=None)[source] -
Установка цвета переднего плана. fg может быть строкой в формате MATLAB, строкой html hex цвета, кортежем rgb или rgba единиц или числом с плавающей точкой от 0 до 1. В последнем случае используется градация серого.
Если известно, что fg — rgba, установите
isRGBA=Trueдля повышения эффективности.
-
set_joinstyle(js)[source] -
Установка стиля соединения ('miter', 'round', 'bevel')
-
set_linewidth(w)[source] -
Установка ширины линии в пунктах
-
-
class matplotlib.backends.backend_cairo.RendererCairo(dpi)[source]
-
Базы:
matplotlib.backend_bases.RendererBase-
static convert_path(ctx, path, transform, clip=None)[source] -
Устарело начиная с версии 3.0: Функция convert_path устарела в Matplotlib 3.0 и будет удалена в 3.2.
-
draw_image(gc, x, y, im)[source] -
Отрисовка RGBA изображения.
Параметры: -
gc : GraphicsContextBase -
контекст графики с информацией о обрезке.
-
x : scalar -
расстояние в физических единицах (т. е. точках или пикселях) от левой стороны холста.
-
y : scalar -
расстояние в физических единицах (т. е. точках или пикселях) от нижней стороны холста.
-
im : array_like, shape=(N, M, 4), dtype=np.uint8 -
массив RGBA-пикселей.
-
transform : matplotlib.transforms.Affine2DBase -
Если и только если конкретный бэкэнд написан так, что
option_scale_image()возвращаетTrue, может быть передано аффинное преобразованиеdraw_image(). Оно имеет вид экземпляраAffine2DBase. Вектор смещения преобразования задается в физических единицах (т. е. точках или пикселях). Обратите внимание, что преобразование не переопределяетxиyи должно быть применено *перед* переводом результата наxиy(это можно сделать, добавивxиyк вектору смещения, определенномуtransform).
-
-
draw_markers(gc, marker_path, marker_trans, path, transform, rgbFace=None)[source] -
Отрисовывает маркер в каждой из вершин в траектории. Это включает все вершины, включая контрольные точки на кривых. Чтобы избежать этого поведения, эти вершины должны быть удалены перед вызовом этой функции.
Это предоставляет реализацию draw_markers по умолчанию, которая делает несколько вызовов
draw_path(). Некоторые бэкэнды могут захотеть переопределить этот метод, чтобы отрисовать маркер только один раз и повторно использовать его несколько раз.Параметры: -
gc : GraphicsContextBase -
Контекст графики
-
marker_trans : matplotlib.transforms.Transform -
Аффинное преобразование, применяемое к маркерам.
-
trans : matplotlib.transforms.Transform -
Аффинное преобразование, применяемое к траектории.
-
-
draw_path(gc, path, transform, rgbFace=None)[source] -
Отрисовывает экземпляр
Pathс помощью заданного аффинного преобразования.
-
draw_path_collection(gc, master_transform, paths, all_transforms, offsets, offsetTrans, facecolors, edgecolors, linewidths, linestyles, antialiaseds, urls, offset_position)[source] -
Отрисовывает коллекцию траекторий, выбирая свойства отрисовки из списков facecolors, edgecolors, linewidths, linestyles и antialiaseds. offsets — список смещений, которые нужно применить к каждой из траекторий. Смещения в offsets сначала преобразуются с помощью offsetTrans, прежде чем применяться. offset_position может быть «screen» или «data» в зависимости от пространства, в котором находятся смещения.
Это предоставляет реализацию
draw_path_collection()по умолчанию, которая делает несколько вызововdraw_path(). Некоторые бэкэнды могут захотеть переопределить этот метод, чтобы отрисовать каждый набор данных траектории только один раз и затем ссылаться на эту траекторию несколько раз с различными смещениями, цветами, стилями и т. д. Методы-генераторы_iter_collection_raw_paths()и_iter_collection()предназначены для помощи (и стандартизации) реализации в разных бэкэндах. Настоятельно рекомендуется использовать эти генераторы, чтобы изменения в поведенииdraw_path_collection()можно было внести глобально.
-
draw_text(gc, x, y, s, prop, angle, ismath=False, mtext=None)[source] -
Отрисовывает экземпляр текста.
Параметры: -
gc : GraphicsContextBase -
контекст графики
-
x : scalar -
координата x текста в координатах отображения
-
y : scalar -
координата y базовой линии текста в координатах отображения
-
s : str -
строка текста
-
prop : matplotlib.font_manager.FontProperties -
свойства шрифта
-
angle : scalar -
угол поворота в градусах
-
mtext : matplotlib.text.Text -
исходный объект текста для отрисовки
Примечания
примечание для разработчиков бэкэндов
Когда вы пытаетесь определить, правильно ли вы получили прямоугольник обрезки (что необходимо для правильной работы выравнивания текста), можно изменить строку в text.py:
if 0: bbox_artist(self, renderer)
на if 1, и тогда вместе с текстом будет нарисован и сам прямоугольник обрезки.
-
-
fontangles = {'italic': <MyCairoCffi name='mock.FONT_SLANT_ITALIC' id='140354934147336'>, 'normal': <MyCairoCffi name='mock.FONT_SLANT_NORMAL' id='140354934155752'>, 'oblique': <MyCairoCffi name='mock.FONT_SLANT_OBLIQUE' id='140354934172360'>}
-
fontweights = {100: <MyCairoCffi name='mock.FONT_WEIGHT_NORMAL' id='140354934118216'>, 200: <MyCairoCffi name='mock.FONT_WEIGHT_NORMAL' id='140354934118216'>, 300: <MyCairoCffi name='mock.FONT_WEIGHT_NORMAL' id='140354934118216'>, 400: <MyCairoCffi name='mock.FONT_WEIGHT_NORMAL' id='140354934118216'>, 500: <MyCairoCffi name='mock.FONT_WEIGHT_NORMAL' id='140354934118216'>, 600: <MyCairoCffi name='mock.FONT_WEIGHT_BOLD' id='140354934134824'>, 700: <MyCairoCffi name='mock.FONT_WEIGHT_BOLD' id='140354934134824'>, 800: <MyCairoCffi name='mock.FONT_WEIGHT_BOLD' id='140354934134824'>, 900: <MyCairoCffi name='mock.FONT_WEIGHT_BOLD' id='140354934134824'>, 'ultralight': <MyCairoCffi name='mock.FONT_WEIGHT_NORMAL' id='140354934118216'>, 'light': <MyCairoCffi name='mock.FONT_WEIGHT_NORMAL' id='140354934118216'>, 'normal': <MyCairoCffi name='mock.FONT_WEIGHT_NORMAL' id='140354934118216'>, 'medium': <MyCairoCffi name='mock.FONT_WEIGHT_NORMAL' id='140354934118216'>, 'regular': <MyCairoCffi name='mock.FONT_WEIGHT_NORMAL' id='140354934118216'>, 'semibold': <MyCairoCffi name='mock.FONT_WEIGHT_BOLD' id='140354934134824'>, 'bold': <MyCairoCffi name='mock.FONT_WEIGHT_BOLD' id='140354934134824'>, 'heavy': <MyCairoCffi name='mock.FONT_WEIGHT_BOLD' id='140354934134824'>, 'ultrabold': <MyCairoCffi name='mock.FONT_WEIGHT_BOLD' id='140354934134824'>, 'black': <MyCairoCffi name='mock.FONT_WEIGHT_BOLD' id='140354934134824'>}
-
get_canvas_width_height()[source] -
Возвращает ширину и высоту холста в координатах отображения.
-
get_text_width_height_descent(s, prop, ismath)[source] -
Получение ширины, высоты и нисходящей части (смещения от нижней части до базовой линии) в координатах отображения строки s со свойствами шрифта
FontPropertiesprop
-
new_gc()[source] -
Возвращает экземпляр
GraphicsContextBase
-
points_to_pixels(points)[source] -
Преобразование точек в единицы отображения.
Необходимо переопределить эту функцию (если у вашего бэкэнда нет разрешения dpi, например, postscript или svg). Некоторые системы отображения предполагают некоторое значение для пикселей на дюйм:
points to pixels = points * pixels_per_inch/72.0 * dpi/72.0
Параметры: -
points : scalar or array_like -
число с плавающей точкой или массив numpy чисел с плавающей точкой
Возвращает: - Преобразованные точки в пиксели
-
-
set_ctx_from_surface(surface)[source]
-
-
set_width_height(width, height)[source]
-
© 2012–2018 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.0.0/api/backend_cairo_api.html