Spec-Zone.ru › Matplotlib 3.3

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]
tostring_argb(self) [source]

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

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

tostring_rgb(self) [source]

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

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

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 со свойствами шрифта FontProperties prop.

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

Spec-Zone.ru

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