Spec-Zone.ru › Matplotlib 3.4

matplotlib.backends.backend_agg

Интерфейс на основе Anti-Grain Geometry (AGG).

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

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

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

  • интеграция разрешения экрана (dpi) с разрешением страницы (ppi) и текстом
matplotlib.backends.backend_agg.FigureCanvas

псевдоним для matplotlib.backends.backend_agg.FigureCanvasAgg

класс matplotlib.backends.backend_agg.FigureCanvasAgg(figure=None)[source]

Bases: matplotlib.backend_bases.FigureCanvasBase

buffer_rgba()[source]

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

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

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

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

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

get_renderer(cleared=False)[source]
print_jpeg(filename_or_obj, *args, pil_kwargs=None, **kwargs)

Записать изображение в файл JPEG.

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

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

Другие параметры:
qualityint, по умолчанию: rcParams["savefig.jpeg_quality"] (по умолчанию: 95)

Качество изображения в диапазоне от 1 (худшее) до 95 (лучшее). Значения выше 95 следует избегать; 100 отключает части алгоритма сжатия JPEG и приводит к большим файлам без заметного повышения качества изображения. Этот параметр устарел.

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

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

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

Нужно ли сохранить изображение как прогрессивный файл JPEG. Этот параметр устарел.

pil_kwargsdict, необязательно

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

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

Записать изображение в файл JPEG.

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

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

Другие параметры:
qualityint, по умолчанию: rcParams["savefig.jpeg_quality"] (по умолчанию: 95)

Качество изображения в диапазоне от 1 (худшее) до 95 (лучшее). Значения выше 95 следует избегать; 100 отключает части алгоритма сжатия JPEG и приводит к большим файлам без заметного повышения качества изображения. Этот параметр устарел.

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

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

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

Нужно ли сохранить изображение как прогрессивный файл JPEG. Этот параметр устарел.

pil_kwargsdict, необязательно

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

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

Записать изображение в файл PNG.

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

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

metadatadict, необязательно

Метаданные в файле 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, необязательно

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

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

print_raw(filename_or_obj, *args)[source]
print_rgba(filename_or_obj, *args)
print_tif(filename_or_obj, *, pil_kwargs=None)[source]
print_tiff(filename_or_obj, *, pil_kwargs=None)
print_to_buffer()[source]
restore_region(region, bbox=None, xy=None)[source]
tostring_argb()[source]

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

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

tostring_rgb()[source]

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

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

классmatplotlib.backends.backend_agg.RendererAgg(ширина, высота, dpi)[source]

Базы: matplotlib.backend_bases.RendererBase

Отобразитель обрабатывает все графические примитивы с использованием экземпляра графического контекста, который управляет цветами/стилями

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

Отрисовка mathtext с использованием matplotlib.mathtext.

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», в зависимости от пространства, в котором находятся смещения; «data» устарело.

Это предоставляет резервную реализацию draw_path_collection(), которая выполняет несколько вызовов draw_path(). Некоторые бэкэнды могут захотеть переопределить это, чтобы отобразить каждый набор данных пути только один раз, а затем использовать этот путь несколько раз с различными смещениями, цветами, стилями и т. д. Генераторные методы _iter_collection_raw_paths() и _iter_collection() предназначены для помощи (и стандартизации) реализации по всем бэкэндам. Настоятельно рекомендуется использовать эти генераторы, чтобы изменения в поведении draw_path_collection() можно было внести глобально.

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

Отрисовка текстового экземпляра.

Параметры:
gcGraphicsContextBase

Графический контекст.

xfloat

Положение x текста в координатах отображения.

yfloat

Положение базовой линии текста в координатах отображения.

sstr

Строка текста.

propmatplotlib.font_manager.FontProperties

Свойства шрифта.

anglefloat

Угол поворота в градусах против часовой стрелки.

mtextmatplotlib.text.Text

Исходный объект текста для отображения.

Примечания

Примечание для разработчиков бэкэндов:

При попытке определить, правильно ли вы получили прямоугольник ограничительной рамки (что необходимо для правильной работы компоновки и выравнивания текста), полезно изменить строку в файле text.py:

if 0: bbox_artist(self, renderer)

на if 1, и тогда прямоугольник ограничительной рамки будет отображаться вместе с текстом.

get_canvas_width_height()[source]

Возвращает ширину и высоту холста в координатах отображения.

get_content_extents()[source]

[Устаревшее]

Примечания

Устарело начиная с версии 3.4:

get_text_width_height_descent(s, prop, ismath)[source]

Возвращает ширину, высоту и спуск (смещение снизу до базовой линии) в координатах отображения для строки s со свойствами шрифта FontProperties prop.

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

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

Бэкэнды растровых изображений обычно должны возвращать False (чтобы уровень растрирования C заботился о композиции изображений); бэкэнды векторных изображений обычно должны возвращать not rcParams["image.composite_image"].

END_OF_DOCUMENT_MARKER
option_scale_image()[source]

Возвращает, поддерживаются ли произвольные аффинные преобразования в draw_image() (True для большинства векторных бэкэндов).

points_to_pixels(points)[source]

Преобразование единиц измерения в пиксели.

Вам нужно переопределить эту функцию (если ваш бэкенд не имеет разрешения dpi, например, postscript или svg). Некоторые системы обработки изображений предполагают некоторое значение для количества пикселей на дюйм:

points to pixels = points * pixels_per_inch/72 * dpi/72
Параметры:
pointsfloat или массив-подобный объект

число с плавающей точкой или массив NumPy чисел с плавающей точкой

Возвращает:
Точки, преобразованные в пиксели
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. ... # создаёт новый массив new_image (4 канала, размер может быть # другим). Полученное изображение может иметь смещения от # левого нижнего угла исходного изображения return new_image, offset_x, offset_y

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

tostring_argb()[source]
tostring_rgb()[source]
tostring_rgba_minimized()[source]

[Устарело]

Замечания

Устарело начиная с версии 3.4:

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

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

Spec-Zone.ru

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