matplotlib.backends.backend_agg
Интерфейс отрисовки на основе библиотеки agg.
Реализованные возможности:
- стили обводки и соединений
- штриховка
- толщина линии
- линии, прямоугольники, эллипсы
- обрезка до прямоугольника
- вывод в RGBA и форматы изображений, поддерживаемые Pillow
- альфа-смешивание
- правильное масштабирование DPI - всё масштабируется правильно (штриховка, толщина линий и т.д.)
- рисование многоугольников
- freetype2 с ft2font
Задачи на будущее:
- интеграция DPI экрана с PPI и текстом
-
matplotlib.backends.backend_agg.FigureCanvas -
псевдоним для
matplotlib.backends.backend_agg.FigureCanvasAgg
-
class matplotlib.backends.backend_agg.FigureCanvasAgg(figure)[source] -
Bases:
matplotlib.backend_bases.FigureCanvasBase-
buffer_rgba(self)[source] -
Получить изображение в виде
memoryviewбуфера рендерера.drawдолжен быть вызван как минимум один раз перед работой этой функции и для обновления рендерера в случае последующих изменений Figure.
-
copy_from_bbox(self, bbox)[source]
-
draw(self)[source] -
Отобразить
Figure.
-
get_renderer(self, cleared=False)[source]
-
print_jpeg(self, filename_or_obj, *args, dryrun=<deprecated parameter>, pil_kwargs=None, **kwargs) -
Сохранить рисунок в файл JPEG.
Параметры: -
filename_or_objstr or path-like or file-like -
Файл для записи.
Другие параметры: -
qualityint, default: rcParams["savefig.jpeg_quality"] (default: 95) -
Качество изображения от 1 (худшее) до 95 (лучшее). Значения выше 95 следует избегать; 100 отключает части алгоритма сжатия JPEG, что приводит к большим файлам с практически никаким улучшением качества изображения. Этот параметр устарел.
-
optimizebool, default: False -
Выполнять ли кодеру дополнительный проход по изображению для выбора оптимальных настроек кодера. Этот параметр устарел.
-
progressivebool, default: False -
Нужно ли хранить изображение как прогрессивный файл JPEG. Этот параметр устарел.
-
pil_kwargsdict, optional -
Дополнительные ключевые аргументы, которые передаются в
PIL.Image.Image.saveпри сохранении рисунка. Они имеют приоритет над quality, optimize и progressive.
-
-
print_jpg(self, filename_or_obj, *args, dryrun=<deprecated parameter>, pil_kwargs=None, **kwargs)[source] -
Сохранить рисунок в файл JPEG.
Параметры: -
filename_or_objstr or path-like or file-like -
Файл для записи.
Другие параметры: -
qualityint, default: rcParams["savefig.jpeg_quality"] (default: 95) -
Качество изображения от 1 (худшее) до 95 (лучшее). Значения выше 95 следует избегать; 100 отключает части алгоритма сжатия JPEG, что приводит к большим файлам с практически никаким улучшением качества изображения. Этот параметр устарел.
-
optimizebool, default: False -
Выполнять ли кодеру дополнительный проход по изображению для выбора оптимальных настроек кодера. Этот параметр устарел.
-
progressivebool, default: False -
Нужно ли хранить изображение как прогрессивный файл JPEG. Этот параметр устарел.
-
pil_kwargsdict, optional -
Дополнительные ключевые аргументы, которые передаются в
PIL.Image.Image.saveпри сохранении рисунка. Они имеют приоритет над quality, optimize и progressive.
-
-
print_png(self, filename_or_obj, *args, metadata=None, pil_kwargs=None)[source] -
Сохранить рисунок в файл PNG.
Параметры: -
filename_or_objstr or path-like or file-like -
Файл для записи.
-
metadatadict, optional -
Метаданные в файле PNG в виде пар ключ-значение байтов или строк, допускающих кодировку latin-1. Согласно спецификации PNG, ключи должны быть короче 79 символов.
Спецификация PNG определяет некоторые общие ключевые слова, которые могут использоваться при необходимости:
- Title: Короткое (одной строки) название или подпись для изображения.
- Author: Имя создателя изображения.
- Description: Описание изображения (возможно длинное).
- Copyright: Авторские права.
- Creation Time: Время создания исходного изображения (обычно в формате RFC 1123).
- Software: Программное обеспечение, используемое для создания изображения.
- Disclaimer: Юридическое освобождение от ответственности.
- Warning: Предупреждение о характере содержимого.
- Source: Устройство, использованное для создания изображения.
- Comment: Разнообразный комментарий; преобразование из другого формата изображения.
Другие ключевые слова могут быть придуманы для других целей.
Если 'Software' не задан, будет использоваться автоматически сгенерированное значение для Matplotlib. Это можно удалить, установив его в None.
Для получения более подробной информации см. спецификацию PNG.
-
pil_kwargsdict, optional -
Ключевые аргументы, передаваемые в
PIL.Image.Image.save.Если ключ 'pnginfo' присутствует, он полностью перезаписывает metadata, включая значение по умолчанию 'Software'.
-
-
print_raw(self, filename_or_obj, *args)[source]
-
print_rgba(self, filename_or_obj, *args)
-
print_tif(self, filename_or_obj, *, dryrun=<deprecated parameter>, pil_kwargs=None)[source]
-
print_tiff(self, filename_or_obj, *, dryrun=<deprecated parameter>, pil_kwargs=None)
-
print_to_buffer(self)[source]
-
restore_region(self, region, bbox=None, xy=None)[source]
-
-
class matplotlib.backends.backend_agg.RendererAgg(width, height, dpi)[source]
-
Bases:
matplotlib.backend_bases.RendererBaseРендерер обрабатывает все графические примитивы с помощью экземпляра контекста графики, который управляет цветами/стилями
-
buffer_rgba(self)[source]
-
clear(self)[source]
-
draw_mathtext(self, gc, x, y, s, prop, angle)[source] -
Отрисовка математического текста с использованием
matplotlib.mathtext.
-
draw_path(self, gc, path, transform, rgbFace=None)[source] -
Отрисовка экземпляра
Pathс использованием заданного аффинного преобразования.
-
draw_path_collection(self, 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", в зависимости от пространства, в котором находятся смещения; "data" устарел.
Это предоставляет реализацию по умолчанию для
draw_path_collection(), которая выполняет несколько вызововdraw_path(). Некоторые бэкэнды могут захотеть переопределить это, чтобы отобразить каждый набор данных путей только один раз, а затем ссылаться на этот путь несколько раз с различными смещениями, цветами, стилями и т.д. Генераторные методы_iter_collection_raw_paths()и_iter_collection()предназначены для помощи (и стандартизации) реализации в разных бэкэндах. Настоятельно рекомендуется использовать эти генераторы, чтобы изменения в поведенииdraw_path_collection()можно было сделать глобально.
-
draw_tex(self, gc, x, y, s, prop, angle, ismath=<deprecated parameter>, mtext=None)[source]
-
draw_text(self, gc, x, y, s, prop, angle, ismath=False, mtext=None)[source] -
Отрисовка экземпляра текста.
Параметры: -
gcGraphicsContextBase -
Контекст графики.
-
xfloat -
Положение x текста в координатах отображения.
-
yfloat -
Положение y базовой линии текста в координатах отображения.
-
sstr -
Строка текста.
-
propmatplotlib.font_manager.FontProperties -
Свойства шрифта.
-
anglefloat -
Угол поворота в градусах против часовой стрелки.
-
mtextmatplotlib.text.Text -
Исходный объект текста для отрисовки.
Примечания
Примечание для разработчиков бэкэндов:
При попытке определить, правильно ли вы определили прямоугольник, что необходимо для правильной работы разметки и выравнивания текста, поможет изменение строки в text.py:
if 0: bbox_artist(self, renderer)
на if 1, а затем прямоугольник будет отображаться вместе с текстом.
-
-
get_canvas_width_height(self)[source] -
Возвращает ширину и высоту холста в координатах отображения.
-
get_text_width_height_descent(self, s, prop, ismath)[source] -
Возвращает ширину, высоту и спуск (смещение от нижней части до базовой линии) в координатах отображения для строки s со свойствами шрифта
FontPropertiesprop.
-
lock = <unlocked _thread.RLock object owner=0 count=0>
-
option_image_nocomposite(self)[source] -
Возвращает значение, указывающее, следует ли пропускать композицию изображений Matplotlib.
Бэкэнды растровой графики обычно возвращают False (позволяя C-уровневому растриру заботиться о композиции изображений); бэкэнды векторной графики обычно возвращают
not rcParams["image.composite_image"].
-
option_scale_image(self)[source] -
Возвращает значение, указывающее, поддерживаются ли произвольные аффинные преобразования в
draw_image()(True для большинства бэкэндов векторной графики).
-
points_to_pixels(self, points)[source] -
Преобразование точек в единицы отображения.
Вам нужно переопределить эту функцию (если ваш бэкэнд не имеет dpi, например, postscript или svg). Некоторые системы изображений предполагают некоторое значение для пикселей на дюйм:
points to pixels = points * pixels_per_inch/72 * dpi/72
Параметры: -
pointsfloat or array-like -
float или numpy массив float
Возвращает: - Преобразованные точки в пиксели
-
-
restore_region(self, region, bbox=None, xy=None)[source] -
Восстановление сохраненной области. Если указан bbox (экземпляр BboxBase или его пределы), восстанавливается только область, заданная bbox. xy (пара чисел с плавающей точкой) необязательно задаёт новое положение (LLU исходной области, а не LLU 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(self)[source] -
Начало фильтрации. Просто создаёт новый холст (старый сохраняется).
-
stop_filter(self, 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(self)[source]
-
tostring_rgb(self)[source]
-
-
tostring_rgba_minimized(self)[source]
-
-
matplotlib.backends.backend_agg.get_hinting_flag()[source]
© 2012–2018 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.3.3/api/backend_agg_api.html