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]
- classmatplotlib.backends.backend_agg.RendererAgg(width, height, dpi)[source]
-
Bases:
RendererBaseThe 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
Pathinstance 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:
-
-
gc
GraphicsContextBase -
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.
-
prop
matplotlib.font_manager.FontProperties -
The font properties.
- anglefloat
-
The rotation angle in degrees anti-clockwise.
-
mtext
matplotlib.text.Text -
The original text object to be rendered.
-
gc
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
FontPropertiesprop.
- 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_imageare 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