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
-
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 с
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 -
число с плавающей точкой или массив 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