matplotlib.backends.backend_pdf
Бэкенд Matplotlib для PDF.
Автор: Jouni K Seppänen <jks@iki.fi> и другие.
- matplotlib.backends.backend_pdf.FigureCanvas[исходный код]
-
псевдоним для
FigureCanvasPdf
- classmatplotlib.backends.backend_pdf.FigureCanvasPdf(figure=None)[исходный код]
-
Базовые классы:
FigureCanvasBase- draw()[исходный код]
-
Отрисовать
Figure.Этот метод должен обходить дерево artist, даже если вывод не создаётся, поскольку он запускает отложенные операции, к результатам которых пользователям может понадобиться получить доступ до сохранения вывода на диск. Например, вычисление пределов, автоматических пределов и значений делений.
- filetypes={'pdf': 'Portable Document Format'}
- fixed_dpi=72
- get_default_filetype()[исходный код]
-
Возвращает формат файла по умолчанию для savefig, указанный в
rcParams["savefig.format"](по умолчанию:'png').Возвращаемая строка не содержит точки. Этот метод переопределён в бэкендах, поддерживающих только один тип файлов.
- print_pdf(filename, *, bbox_inches_restore=None, metadata=None)[исходный код]
- classmatplotlib.backends.backend_pdf.GraphicsContextPdf(file)[исходный код]
-
Базовые классы:
GraphicsContextBase- alpha_cmd(alpha, forced, effective_alphas)[исходный код]
- capstyle_cmd(style)[исходный код]
- capstyles={'butt': 0, 'projecting': 2, 'round': 1}
- commands=((('_cliprect', '_clippath'), <function GraphicsContextPdf.clip_cmd>), (('_alpha', '_forced_alpha', '_effective_alphas'), <function GraphicsContextPdf.alpha_cmd>), (('_capstyle',), <function GraphicsContextPdf.capstyle_cmd>), (('_fillcolor',), <function GraphicsContextPdf.fillcolor_cmd>), (('_joinstyle',), <function GraphicsContextPdf.joinstyle_cmd>), (('_linewidth',), <function GraphicsContextPdf.linewidth_cmd>), (('_dashes',), <function GraphicsContextPdf.dash_cmd>), (('_rgb',), <function GraphicsContextPdf.rgb_cmd>), (('_hatch', '_hatch_color', '_hatch_linewidth'), <function GraphicsContextPdf.hatch_cmd>))
- copy_properties(other)[исходный код]
-
Скопировать свойства other в self.
- dash_cmd(dashes)[исходный код]
- delta(other)[исходный код]
-
Скопировать свойства other в self и вернуть команды PDF, необходимые для преобразования self в other.
- fill(*args)[исходный код]
-
Предикат: нужно ли заливать контур?
Необязательный аргумент позволяет указать альтернативный _fillcolor, который может понадобиться RendererPdf.draw_markers.
- fillcolor_cmd(rgb)[исходный код]
- finalize()[исходный код]
-
Убедиться, что для каждого сохранённого состояния графики выполнен pop.
- hatch_cmd(hatch, hatch_color, hatch_linewidth)[исходный код]
- joinstyle_cmd(style)[исходный код]
- joinstyles={'bevel': 2, 'miter': 0, 'round': 1}
- linewidth_cmd(width)[исходный код]
- paint()[исходный код]
-
Возвращает соответствующий оператор PDF для обводки контура, заливки или выполнения обоих действий.
- pop()[исходный код]
- push()[исходный код]
- rgb_cmd(rgb)[исходный код]
- stroke()[исходный код]
-
Предикат: нужно ли обводить контур (рисовать его границу)? Проверяются различные условия, отключающие обводку контура; в этом случае, предположительно, он будет залит.
- classmatplotlib.backends.backend_pdf.Name(name)[исходный код]
-
Базовые классы:
objectОбъект имени PDF.
- name
- pdfRepr()[исходный код]
- classmatplotlib.backends.backend_pdf.Op(*values)[источник]
-
Базовые классы:
EnumОператоры PDF (список не является исчерпывающим).
- begin_text=b'BT'[источник]
- clip=b'W'[источник]
- close_fill_stroke=b'b'[источник]
- close_stroke=b's'[источник]
- closepath=b'h'[источник]
- concat_matrix=b'cm'[источник]
- curveto=b'c'[источник]
- end_text=b'ET'[источник]
- endpath=b'n'[источник]
- fill=b'f'[источник]
- fill_stroke=b'B'[источник]
- grestore=b'Q'[источник]
- gsave=b'q'[источник]
- lineto=b'l'[источник]
- moveto=b'm'[источник]
- classmethodpaint_path(fill, stroke)[источник]
-
Возвращает оператор PDF для отрисовки контура.
- Параметры:
-
- fillbool
-
Залить контур цветом заливки.
- strokebool
-
Обвести контур цветом линии.
- pdfRepr()[источник]
- rectangle=b're'[источник]
- selectfont=b'Tf'[источник]
- setcolor_nonstroke=b'scn'[источник]
- setcolor_stroke=b'SCN'[источник]
- setcolorspace_nonstroke=b'cs'[источник]
- setcolorspace_stroke=b'CS'[источник]
- setdash=b'd'[источник]
- setgray_nonstroke=b'g'[источник]
- setgray_stroke=b'G'[источник]
- setgstate=b'gs'[источник]
- setlinecap=b'J'[источник]
- setlinejoin=b'j'[источник]
- setlinewidth=b'w'[источник]
- setrgb_nonstroke=b'rg'[источник]
- setrgb_stroke=b'RG'[источник]
- shading=b'sh'[источник]
- show=b'Tj'[источник]
- showkern=b'TJ'[источник]
- stroke=b'S'[источник]
- textmatrix=b'Tm'[источник]
- textpos=b'Td'[источник]
- use_xobject=b'Do'[источник]
- classmatplotlib.backends.backend_pdf.PdfFile(filename, metadata=None)[исходный код]
-
Базовые классы:
objectОбъект PDF-файла.
- Параметры:
-
- filenameстрока, объект, похожий на путь, или файловый объект
-
Целевой объект вывода; если указана строка, файл будет открыт для записи.
- metadataсловарь строк и дат
-
Объект словаря сведений (см. раздел 10.2.1 справочника PDF «Словарь сведений о документе»), например:
{'Creator': 'My software', 'Author': 'Me', 'Title': 'Awesome'}.Стандартные ключи: 'Title', 'Author', 'Subject', 'Keywords', 'Creator', 'Producer', 'CreationDate', 'ModDate' и 'Trapped'. Значения для 'Creator', 'Producer' и 'CreationDate' заданы заранее. Их можно удалить, присвоив им значение
None.
- addGouraudTriangles(points, colors)[исходный код]
-
Добавить затенение треугольников по Гуро.
- Параметры:
-
- pointsnp.ndarray
-
Вершины треугольников, форма (n, 3, 2), где n = количество треугольников, 3 = вершины, 2 = x, y.
- colorsnp.ndarray
-
Цвета вершин, форма (n, 3, 1) или (n, 3, 4), как и у points, но последнее измерение — это либо (gray,), либо (r, g, b, alpha).
- Возвращает:
-
- Имя, ссылка
- alphaState(alpha)[исходный код]
-
Вернуть имя ExtGState, задающего альфа-каналу указанное значение.
- beginStream(id, len, extra=None, png=None)[исходный код]
- close()[исходный код]
-
Сбросить все буферы и освободить все ресурсы.
- createType1Descriptor(t1font, fontfile)[исходный код]
- dviFontName(dvifont)[исходный код]
-
Получив объект шрифта dvi, вернуть имя, подходящее для Op.selectfont. Если сведения о шрифте ещё не зарегистрированы, они будут зарегистрированы в
self.dviFontInfo.
- embedTTF(filename, characters)[исходный код]
-
Встроить в документ шрифт TTF из указанного файла.
- endStream()[исходный код]
- finalize()[исходный код]
-
Записать отложенные объекты и заключительную часть PDF.
- fontName(fontprop)[исходный код]
-
Выбрать шрифт на основе fontprop и вернуть имя, подходящее для Op.selectfont. Если fontprop — строка, она будет интерпретирована как имя файла шрифта.
- hatchPattern(hatch_style)[исходный код]
- propertyhatchPatterns[исходный код]
-
[Устарело]
Примечания
Устарело с версии 3.10:
- imageObject(image)[исходный код]
-
Вернуть имя XObject изображения, представляющего указанное изображение.
- markerObject(path, trans, fill, stroke, lw, joinstyle, capstyle)[исходный код]
-
Вернуть имя XObject маркера, представляющего указанный путь.
- newPage(width, height)[исходный код]
- newTextnote(text, positionRect=[-100, -100, 0, 0])[исходный код]
- output(*data)[исходный код]
- outputStream(ref, data, *, extra=None)[исходный код]
- pathCollectionObject(gc, path, trans, padding, filled, stroked)[исходный код]
- staticpathOperations(path, transform, clip=None, simplify=None, sketch=None)[исходный код]
- recordXref(id)[исходный код]
- reserveObject(name='')[исходный код]
-
Зарезервировать идентификатор для косвенного объекта.
Имя используется для отладки на случай, если мы забудем вывести объект с помощью writeObject.
- write(data)[исходный код]
- writeExtGSTates()[исходный код]
- writeFonts()[исходный код]
- writeGouraudTriangles()[исходный код]
- writeHatches()[исходный код]
- writeImages()[исходный код]
- writeInfoDict()[исходный код]
-
Вывести словарь сведений, проверив его корректность
- writeMarkers()[исходный код]
- writeObject(object, contents)[исходный код]
- writePath(path, transform, clip=False, sketch=None)[исходный код]
- writePathCollectionTemplates()[исходный код]
- writeTrailer()[исходный код]
-
Вывести завершающую часть PDF.
- writeXref()[исходный код]
-
Вывести таблицу xref.
- classmatplotlib.backends.backend_pdf.PdfPages(filename, keep_empty=<deprecated parameter>, metadata=None)[исходный код]
-
Базовые классы:
objectМногостраничный PDF-файл.
Примечания
На самом деле
PdfPages— это простая оболочка надPdfFile, предназначенная для предотвращения путаницы при использованииsavefigи забывании аргумента формата.Примеры
>>> import matplotlib.pyplot as plt >>> # Initialize: >>> with PdfPages('foo.pdf') as pdf: ... # As many times as you like, create a figure fig and save it: ... fig = plt.figure() ... pdf.savefig(fig) ... # When no figure is specified the current figure is saved ... pdf.savefig()Создать новый объект PdfPages.
- Параметры:
-
- filenameстрока, объект, похожий на путь, или файловый объект
-
Графики, сохранённые с помощью
PdfPages.savefig, будут записаны в файл по этому адресу. Файл открывается при первом сохранении рисунка (при этом перезаписывается любой старый файл с тем же именем). - metadataсловарь, необязательный
-
Объект словаря сведений (см. раздел 10.2.1 справочника PDF «Словарь сведений о документе»), например:
{'Creator': 'My software', 'Author': 'Me', 'Title': 'Awesome'}.Стандартные ключи: 'Title', 'Author', 'Subject', 'Keywords', 'Creator', 'Producer', 'CreationDate', 'ModDate' и 'Trapped'. Значения для 'Creator', 'Producer' и 'CreationDate' заданы заранее. Их можно удалить, присвоив им значение
None.
- attach_note(text, positionRect=[-100, -100, 0, 0])[исходный код]
-
Добавить текстовую заметку на страницу, которая будет сохранена следующей. Необязательный параметр positionRect задаёт положение новой заметки на странице. По умолчанию заметка размещается за пределами страницы, чтобы гарантировать её невидимость при печати.
- close()[исходный код]
-
Завершить работу объекта, сформировав полноценный PDF-файл.
- get_pagecount()[исходный код]
-
Вернуть текущее количество страниц в многостраничном PDF-файле.
- infodict()[исходный код]
-
Вернуть изменяемый объект словаря сведений (см. раздел 10.2.1 справочника PDF «Словарь сведений о документе»).
- classmatplotlib.backends.backend_pdf.Reference(id)[исходный код]
-
Базовые классы:
objectОбъект ссылки PDF.
Для создания ссылок используйте PdfFile.reserveObject().
- pdfRepr()[исходный код]
- write(contents, file)[исходный код]
- classmatplotlib.backends.backend_pdf.RendererPdf(file, image_dpi, height, width)[исходный код]
-
Bases:
RendererPDFPSBase- check_gc(gc, fillcolor=None)[исходный код]
- draw_gouraud_triangles(gc, points, colors, trans)[исходный код]
-
Нарисовать серию треугольников Гуро.
- Параметры:
-
-
gc
GraphicsContextBase -
Графический контекст.
- triangles_array(N, 3, 2) массивоподобный объект
-
Массив из N точек (x, y) для треугольников.
- colors_array(N, 3, 4) массивоподобный объект
-
Массив из N цветов RGBA для каждой точки треугольников.
-
transform
Transform -
Аффинное преобразование, применяемое к точкам.
-
gc
- draw_image(gc, x, y, im, transform=None)[исходный код]
-
Нарисовать изображение RGBA.
- Параметры:
-
-
gc
GraphicsContextBase -
Графический контекст с информацией об отсечении.
- xfloat
-
Расстояние в физических единицах (т. е. в точках или пикселях) от левого края холста.
- yfloat
-
Расстояние в физических единицах (т. е. в точках или пикселях) от нижнего края холста.
-
im(N, M, 4) массив
numpy.uint8 -
Массив пикселей RGBA.
-
transform
Affine2DBase -
Если и только если конкретный бэкенд реализован так, что
option_scale_imageвозвращаетTrue, вdraw_imageможно передать аффинное преобразование (т. е.Affine2DBase). Вектор переноса преобразования задаётся в физических единицах (т. е. в точках или пикселях). Обратите внимание, что преобразование не заменяет x и y и должно применяться до переноса результата на x и y (это можно сделать, добавив x и y к вектору переноса, заданному параметром transform).
-
gc
- draw_markers(gc, marker_path, marker_trans, path, trans, rgbFace=None)[исходный код]
-
Нарисовать маркер в каждой вершине path (за исключением контрольных точек).
Базовая реализация (резервный вариант) выполняет несколько вызовов
draw_path. Бэкендам может потребоваться переопределить этот метод, чтобы нарисовать маркер один раз и использовать его повторно.- Параметры:
-
-
gc
GraphicsContextBase -
Графический контекст.
-
marker_path
Path -
Путь маркера.
-
marker_trans
Transform -
Аффинное преобразование, применяемое к маркеру.
-
path
Path -
Места, в которых нужно нарисовать маркеры.
-
trans
Transform -
Аффинное преобразование, применяемое к пути.
- rgbFaceцвет, необязательный
-
gc
- draw_mathtext(gc, x, y, s, prop, angle)[исходный код]
- draw_path(gc, path, transform, rgbFace=None)[исходный код]
-
Нарисовать экземпляр
Pathс использованием заданного аффинного преобразования.
- draw_path_collection(gc, master_transform, paths, all_transforms, offsets, offset_trans, facecolors, edgecolors, linewidths, linestyles, antialiaseds, urls, offset_position)[исходный код]
-
Нарисовать коллекцию paths.
Каждый путь сначала преобразуется соответствующим элементом all_transforms (списком матриц размера (3, 3)), а затем — master_transform. После этого они смещаются на соответствующий элемент offsets, предварительно преобразованный с помощью offset_trans.
facecolors, edgecolors, linewidths, linestyles и antialiased — списки, задающие соответствующие свойства.
Параметр offset_position сейчас не используется, но сохранён для обратной совместимости.
Базовая реализация (резервный вариант) выполняет несколько вызовов
draw_path. Бэкендам может потребоваться переопределить этот метод, чтобы отрисовывать каждый набор данных пути только один раз, а затем повторно ссылаться на этот путь с различными смещениями, цветами, стилями и т. д. Для упрощения реализации и её стандартизации во всех бэкендах предоставлены методы-генераторы_iter_collection_raw_pathsи_iter_collection. Настоятельно рекомендуется использовать эти генераторы, чтобы изменения в поведенииdraw_path_collectionможно было вносить глобально.
- draw_tex(gc, x, y, s, prop, angle, *, mtext=None)[исходный код]
-
Нарисовать экземпляр TeX.
- Параметры:
-
-
gc
GraphicsContextBase -
Графический контекст.
- xfloat
-
Координата x текста в координатах отображения.
- yfloat
-
Координата y базовой линии текста в координатах отображения.
- sstr
-
Текстовая строка TeX.
-
prop
FontProperties -
Свойства шрифта.
- anglefloat
-
Угол поворота в градусах против часовой стрелки.
-
mtext
Text -
Исходный текстовый объект для отрисовки.
-
gc
- draw_text(gc, x, y, s, prop, angle, ismath=False, mtext=None)[исходный код]
-
Нарисовать экземпляр текста.
- Параметры:
-
-
gc
GraphicsContextBase -
Графический контекст.
- xfloat
-
Координата x текста в координатах отображения.
- yfloat
-
Координата y базовой линии текста в координатах отображения.
- sstr
-
Текстовая строка.
-
prop
FontProperties -
Свойства шрифта.
- anglefloat
-
Угол поворота в градусах против часовой стрелки.
- ismathbool or "TeX"
-
Если True, использовать парсер mathtext.
-
mtext
Text -
Исходный текстовый объект для отрисовки.
-
gc
Примечания
Примечания для разработчиков бэкендов:
RendererBase.draw_textтакже поддерживает передачу значения "TeX" параметру ismath для использования отрисовки TeX, однако это не является обязательным для бэкендов отрисовки; многие встроенные бэкенды этого не поддерживают. Вместо этого отрисовка TeX реализована вdraw_tex.
- encode_string(s, fonttype)[исходный код]
- finalize()[исходный код]
- get_image_magnification()[исходный код]
-
Получить коэффициент увеличения изображений, передаваемых в
draw_image. Позволяет бэкенду использовать для изображений разрешение, отличное от разрешения других графических объектов.
- new_gc()[исходный код]
-
Вернуть экземпляр
GraphicsContextBase.
- classmatplotlib.backends.backend_pdf.Stream(id, len, file, extra=None, png=None)[исходный код]
-
Bases:
objectОбъект потока PDF.
У него нет метода pdfRepr. Вместо этого вызовите begin(), затем выведите содержимое потока с помощью write() и в завершение вызовите end().
- Параметры:
-
- idint
-
Идентификатор объекта потока.
- lenReference or None
-
Неиспользуемый объект Reference для длины потока; значение None означает, что следует использовать буфер памяти, чтобы длину можно было включить непосредственно.
- filePdfFile
-
Объект, в который записывается поток.
- extradict от Name к любому значению или None
-
Дополнительные пары ключ-значение, включаемые в заголовок потока.
- pngdict или None
-
Параметры декодирования, если данные уже закодированы в формате PNG.
- compressobj
- end()[исходный код]
-
Завершить поток.
- extra
- file
- id
- len
- pdfFile
- pos
- write(data)[исходный код]
-
Записать данные в поток.
- classmatplotlib.backends.backend_pdf.Verbatim(x)[исходный код]
-
Bases:
objectСохраняет команды PDF без изменений для последующего включения в поток.
- pdfRepr()[исходный код]
- matplotlib.backends.backend_pdf.pdfRepr(obj)[исходный код]
-
Преобразовать объекты Python в синтаксис PDF.
© 2012–2026 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/stable/api/backend_pdf_api.html