Spec-Zone.ru › Matplotlib 3.2

matplotlib.backends.backend_agg

Backend agg http://antigrain.com/

Реализованные возможности

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

TODO:

  • интеграция разрешения экрана 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

Поверхность холста, на которую отрисовывается фигура. Вызывает методы рисования и печати, создает рендереры и т. д.

Атрибуты:
figurematplotlib.figure.Figure

Экземпляр Figure высокого уровня

buffer_rgba(self) [source]

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

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

Возвращает:
memoryview
copy_from_bbox(self, bbox) [source]
draw(self) [source]

Отрисовка фигуры с использованием рендерера.

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 PathLike or file-like object

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

Другие параметры:
qualityint

Качество изображения в диапазоне от 1 (худшее) до 100 (лучшее). По умолчанию rcParams["savefig.jpeg_quality"] (по умолчанию: 95). Значения выше 95 следует избегать; 100 полностью отключает этап квантования JPEG.

optimizebool

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

progressivebool

Если присутствует, указывает, что это изображение должно быть сохранено как прогрессивный файл JPEG.

pil_kwargsdict, optional

Дополнительные ключевые аргументы, передаваемые в PIL.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 PathLike or file-like object

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

Другие параметры:
qualityint

Качество изображения в диапазоне от 1 (худшее) до 100 (лучшее). По умолчанию rcParams["savefig.jpeg_quality"] (по умолчанию: 95). Значения выше 95 следует избегать; 100 полностью отключает этап квантования JPEG.

optimizebool

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

progressivebool

Если присутствует, указывает, что это изображение должно быть сохранено как прогрессивный файл JPEG.

pil_kwargsdict, optional

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

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

Запись фигуры в файл PNG.

Параметры:
filename_or_objstr or PathLike or file-like object

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

metadatadict, optional

Метаданные в файле PNG в виде пар ключ-значение байтов или строк, кодируемых в latin-1. В соответствии со спецификацией PNG, ключи должны быть короче 79 символов.

Спецификация PNG определяет некоторые общие ключевые слова, которые могут быть использованы как соответствующие:

  • Название: короткое (одна строка) название или подпись к изображению.
  • Автор: имя создателя изображения.
  • Описание: описание изображения (возможно длинное).
  • Авторские права: уведомление об авторских правах.
  • Время создания: время создания исходного изображения (обычно формат RFC 1123).
  • Программное обеспечение: программное обеспечение, используемое для создания изображения.
  • Отказ от ответственности: юридическое уведомление.
  • Предупреждение: предупреждение о характере содержимого.
  • Источник: устройство, используемое для создания изображения.
  • Комментарий: прочие комментарии; преобразование из другого формата изображения.

Другие ключевые слова могут быть придуманы для других целей.

Если 'Программное обеспечение' не указано, будет использоваться сгенерированное значение matplotlib.

Дополнительные сведения см. в спецификации PNG.

pil_kwargsdict, optional

Если задано отличное от None значение, используйте Pillow для сохранения фигуры вместо встроенной поддержки PNG Matplotlib и передайте эти ключевые аргументы в PIL.Image.save.

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

print_raw(self, filename_or_obj, *args, **kwargs) [source]
print_rgba(self, filename_or_obj, *args, **kwargs)
print_tif(self, filename_or_obj, *args, dryrun=<deprecated parameter>, pil_kwargs=None, **kwargs) [source]
print_tiff(self, filename_or_obj, *args, dryrun=<deprecated parameter>, pil_kwargs=None, **kwargs)
print_to_buffer(self) [source]
restore_region(self, region, bbox=None, xy=None) [source]
tostring_argb(self) [source]

Получить изображение как строку байтов ARGB.

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

Возвращает:
bytes
tostring_rgb(self) [source]

Получить изображение как строку байтов RGB.

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

Возвращает:
bytes
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_tex(self, gc, x, y, s, prop, angle, ismath='TeX!', 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

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

Примечания

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

При попытке определить, правильно ли вы получили прямоугольник ограничивающей рамки (что позволяет правильно выровнять/выстроить текст), вам может помочь изменение строки в тексте.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

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

Возвращает:
Преобразованные точки в пиксели
restore_region(self, 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(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.2.2/api/backend_agg_api.html

Spec-Zone.ru

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