Spec-Zone.ru › Matplotlib 3.6

backend_agg

Бэкенд Anti-Grain Geometry (AGG).

Реализованные функции:

  • стили обводки и соединения
  • штриховка
  • ширина линии
  • линии, прямоугольники, эллипсы
  • обрезка по прямоугольнику
  • вывод в RGBA и поддерживаемые Pillow форматы изображений
  • альфа-смешивание
  • корректное масштабирование DPI — все масштабируется правильно (штриховка, ширина линий и т. д.)
  • рисование многоугольников
  • freetype2 с ft2font

Осталось сделать:

  • интеграция разрешения экрана DPI с ppi и текстом
matplotlib.backends.backend_agg.FigureCanvas[source]

псевдоним для FigureCanvasAgg

classmatplotlib.backends.backend_agg.FigureCanvasAgg(figure=None)[source]

Bases: FigureCanvasBase

buffer_rgba()[source]

Получить изображение в виде memoryview из буфера рендерера.

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

copy_from_bbox(bbox)[source]
draw()[source]

Отобразить Figure.

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

get_renderer(cleared=<deprecated parameter>)[source]
print_jpeg(filename_or_obj, *args, pil_kwargs=None)[source]

Записать фигуру в файл JPEG.

Параметры:
filename_or_objстрока или путь или файл-подобный объект

Файл для записи.

pil_kwargsсловарь, необязательно

Дополнительные ключевые аргументы, передаваемые в PIL.Image.Image.save при сохранении фигуры.

print_jpg(filename_or_obj, *args, pil_kwargs=None)[source]

Записать фигуру в файл JPEG.

Параметры:
filename_or_objстрока или путь или файл-подобный объект

Файл для записи.

pil_kwargsсловарь, необязательно

Дополнительные ключевые аргументы, передаваемые в PIL.Image.Image.save при сохранении фигуры.

print_png(filename_or_obj, *args, metadata=None, pil_kwargs=None)[source]

Записать фигуру в файл PNG.

Параметры:
filename_or_objстрока или путь или файл-подобный объект

Файл для записи.

metadataсловарь, необязательно

Метаданные в файле PNG в виде пар ключ-значение байтов или строк, кодируемых в latin-1. Согласно спецификации PNG, ключи должны быть короче 79 символов.

Спецификация PNG определяет некоторые общие ключевые слова, которые могут использоваться по мере необходимости:

  • Название: короткое (одна строка) название или подпись для изображения.
  • Автор: имя создателя изображения.
  • Описание: описание изображения (возможно, длинное).
  • Авторские права: уведомление об авторских правах.
  • Время создания: время первоначального создания изображения (обычно в формате RFC 1123).
  • Программа: программа, используемая для создания изображения.
  • Оговорка: юридическое уведомление об отказе от ответственности.
  • Предупреждение: предупреждение о характере содержимого.
  • Источник: устройство, используемое для создания изображения.
  • Комментарий: различные комментарии; преобразование из другого формата изображения.

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

Если 'Программа' не указана, будет использоваться автоматически сгенерированное значение для Matplotlib. Это можно удалить, установив его в None.

Для получения дополнительной информации см. спецификацию PNG.

pil_kwargsсловарь, необязательно

Ключевые аргументы, передаваемые в PIL.Image.Image.save.

Если ключ 'pnginfo' присутствует, он полностью заменяет metadata, включая ключевое слово 'Программа' по умолчанию.

print_raw(filename_or_obj, *args)[source]
print_rgba(filename_or_obj, *args)[source]
print_tif(filename_or_obj, *, pil_kwargs=None)[source]

Записать фигуру в TIFF-файл.

Параметры:
filename_or_objстрока или путь или файл-подобный объект

Файл для записи.

pil_kwargsсловарь, необязательно

Дополнительные ключевые аргументы, передаваемые в PIL.Image.Image.save при сохранении фигуры.

print_tiff(filename_or_obj, *, pil_kwargs=None)[source]

Запись рисунка в файл TIFF.

Параметры:
filename_or_objстрока или объект пути или файл-подобный объект

Файл для записи.

pil_kwargsсловарь, необязательно

Дополнительные ключевые аргументы, передаваемые в PIL.Image.Image.save при сохранении рисунка.

print_to_buffer()[source]
print_webp(filename_or_obj, *, pil_kwargs=None)[source]

Запись рисунка в файл WebP.

Параметры:
filename_or_objстрока или объект пути или файл-подобный объект

Файл для записи.

pil_kwargsсловарь, необязательно

Дополнительные ключевые аргументы, передаваемые в PIL.Image.Image.save при сохранении рисунка.

restore_region(region, bbox=None, xy=None)[source]
tostring_argb()[source]

Получить изображение в формате ARGB bytes.

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

tostring_rgb()[source]

Получить изображение в формате RGB bytes.

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

classmatplotlib.backends.backend_agg.RendererAgg(width, height, dpi)[source]

Bases: RendererBase

The renderer handles all the drawing primitives using a graphics context instance that controls the colors/styles

buffer_rgba()[source]
clear()[source]
draw_mathtext(gc, x, y, s, prop, angle)[source]

Draw mathtext using matplotlib.mathtext.

draw_path(gc, path, transform, rgbFace=None)[source]

Draw a Path instance using the given affine transform.

draw_tex(gc, x, y, s, prop, angle, *, mtext=None)[source]
draw_text(gc, x, y, s, prop, angle, ismath=False, mtext=None)[source]

Draw a text instance.

Parameters:
gcGraphicsContextBase

The graphics context.

xfloat

The x location of the text in display coords.

yfloat

The y location of the text baseline in display coords.

sstr

The text string.

propmatplotlib.font_manager.FontProperties

The font properties.

anglefloat

The rotation angle in degrees anti-clockwise.

mtextmatplotlib.text.Text

The original text object to be rendered.

Notes

Note for backend implementers:

When you are trying to determine if you have gotten your bounding box right (which is what enables the text layout/alignment to work properly), it helps to change the line in text.py:

if 0: bbox_artist(self, renderer)

to if 1, and then the actual bounding box will be plotted along with your text.

get_canvas_width_height()[source]

Return the canvas width and height in display coords.

get_text_width_height_descent(s, prop, ismath)[source]

Get the width, height, and descent (offset from the bottom to the baseline), in display coords, of the string s with FontProperties prop.

lock=<unlocked _thread.RLock object owner=0 count=0>
option_image_nocomposite()[source]

Return whether image composition by Matplotlib should be skipped.

Raster backends should usually return False (letting the C-level rasterizer take care of image composition); vector backends should usually return not rcParams["image.composite_image"].

option_scale_image()[source]

Return whether arbitrary affine transformations in draw_image are supported (True for most vector backends).

points_to_pixels(points)[source]

Convert points to display units.

You need to override this function (unless your backend doesn't have a dpi, e.g., postscript or svg). Some imaging systems assume some value for pixels per inch:

points to pixels = points * pixels_per_inch/72 * dpi/72
Parameters:
pointsfloat or array-like

a float or a numpy array of float

Returns:
Points converted to pixels
restore_region(region, bbox=None, xy=None)[source]

Восстановить сохранённую область. Если задан bbox (объект BboxBase или его границы), то будет восстановлена только область, указанная этим bbox. xy (пара чисел с плавающей точкой) опционально задаёт новое положение (левый нижний угол исходной области, а не bbox), куда будет восстановлена область.

>>> region = renderer.copy_from_bbox()
>>> x1, y1, x2, y2 = region.get_extents()
>>> renderer.restore_region(region, bbox=(x1+dx, y1, x2, y2),
...                         xy=(x1-dx, y1))
start_filter()[source]

Начать фильтрацию. Просто создаёт новый холст (старый сохраняется).

stop_filter(post_processing)[source]

Сохранить график на текущем холсте как изображение и применить функцию post_processing.

def post_processing(image, dpi):

# ny, nx, depth = image.shape # изображение (массив numpy) имеет RGBA каналы и имеет глубину 4. ... # создать новое изображение (массив numpy из 4 каналов, размер может быть # различным). Результирующее изображение может иметь смещения от # нижнего левого угла исходного изображения return new_image, offset_x, offset_y

Сохранённый рендерер восстанавливается, а возвращённое изображение из post_processing отображается (с помощью draw_image) на нём.

tostring_argb()[source]
tostring_rgb()[source]
matplotlib.backends.backend_agg.get_hinting_flag()[source]

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

Spec-Zone.ru

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