Spec-Zone.ru › Matplotlib 3.8

matplotlib.backends.backend_agg

Backend на основе 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]

Базы: FigureCanvasBase

buffer_rgba()[source]

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

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

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

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

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

get_renderer()[source]
print_jpeg(filename_or_obj, *, metadata=None, pil_kwargs=None)[source]

Сохранить рисунок в файл JPEG.

Параметры:
filename_or_objstr или path-like или file-like

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

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

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

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

Сохранить рисунок в файл JPEG.

Параметры:
filename_or_objstr или path-like или file-like

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

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

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

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

Сохранить рисунок в файл PNG.

Параметры:
filename_or_objstr или path-like или file-like

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

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

Метаданные в файле PNG в виде пар ключ-значение байтов или строк, которые можно закодировать в латин-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, *, metadata=None)[source]
print_rgba(filename_or_obj, *, metadata=None)[source]
print_tif(filename_or_obj, *, metadata=None, pil_kwargs=None)[source]

Сохранить рисунок в файл TIFF.

Параметры:
filename_or_objstr или path-like или file-like

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

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

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

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

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

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

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

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

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

print_to_buffer()[source]
print_webp(filename_or_obj, *, metadata=None, 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 должно быть вызвано хотя бы один раз перед тем, как эта функция будет работать и обновить рендерер для любых последующих изменений в Figure.

tostring_rgb()[source]

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

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

Примечания

Устарело начиная с версии 3.8: Используйте buffer_rgba вместо этого.

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

Основы: RendererBase

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

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

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

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

Отрисовка экземпляра Path с использованием заданного аффинного преобразования.

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

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

Параметры:
gcGraphicsContextBase

Контекст графики.

xfloat

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

yfloat

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

sstr

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

propFontProperties

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

anglefloat

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

mtextText

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

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

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

Параметры:
gcGraphicsContextBase

Контекст графики.

xfloat

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

yfloat

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

sstr

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

propFontProperties

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

anglefloat

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

ismathbool or "TeX"

Если True, используется парсер mathtext. Если "TeX", используется tex для отрисовки.

mtextText

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

Примечания

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

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

if 0: bbox_artist(self, renderer)

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

get_canvas_width_height()[source]

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

get_text_width_height_descent(s, prop, ismath)[source]

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

Пробелы в начале и конце s включены в вычисленную ширину.

option_image_nocomposite()[source]

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

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

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 или массив-подобный объект
Возвращаемое значение:
Точки, преобразованные в пиксели
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
  # image (numpy array) has RGBA channels and has a depth of 4.
  ...
  # create a new_image (numpy array of 4 channels, size can be
  # different). The resulting image may have offsets from
  # lower-left corner of the original image
  return new_image, offset_x, offset_y

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

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

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

Примечания

Устарело начиная с версии 3.8: Используйте вместо этого buffer_rgba.

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.8.4/api/backend_agg_api.html

Spec-Zone.ru

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