matplotlib.sphinxext.plot_directive
Директива для вставки графика Matplotlib в документ Sphinx
По умолчанию, в HTML-выводе plot будет включать файл .png с ссылкой на высококачественные .png и .pdf. В LaTeX-выводе будет включён .pdf.
Исходный код графика может быть включён одним из трёх способов:
-
Путь к исходному файлу в качестве аргумента директивы:
.. plot:: path/to/plot.py
Когда указан путь к исходному файлу, содержимое директивы может дополнительно содержать заголовок для графика:
.. plot:: path/to/plot.py This is the caption for the plot
Кроме того, можно указать имя функции, которая будет вызвана (без аргументов) сразу после импорта модуля:
.. plot:: path/to/plot.py plot_function1
-
Включён как встроенное содержимое в директиву:
.. plot:: import matplotlib.pyplot as plt import matplotlib.image as mpimg import numpy as np img = mpimg.imread('_static/stinkbug.png') imgplot = plt.imshow(img) -
Используя синтаксис doctest:
.. plot:: A plotting example: >>> import matplotlib.pyplot as plt >>> plt.plot([1, 2, 3], [4, 5, 6])
Параметры
Директива plot поддерживает следующие параметры:
-
format{'python', 'doctest'} - Указать формат входных данных
-
include-sourcebool - Определяет, отображать ли исходный код. Значение по умолчанию может быть изменено с помощью переменной
plot_include_sourceв файле conf.py -
encodingstr - Если исходный файл имеет кодировку, отличную от UTF-8 или ASCII, кодировка должна быть указана с помощью параметра
:encoding:. Кодировка не будет определена с помощью метакомментария-*- coding -*-. -
contextbool or str - Если указано, код будет выполняться в контексте всех предыдущих директив plot, для которых был указан параметр
:context:. Это относится только к встроенным директивам plot, а не к тем, которые выполняются из файлов. Если указан параметр:context: reset, контекст сбрасывается для данного и последующих графиков, и предыдущие фигуры закрываются перед выполнением кода.:context: close-figsсохраняет контекст, но закрывает предыдущие фигуры перед выполнением кода. -
nofigsbool - Если указано, блок кода будет выполнен, но фигуры не будут вставлены. Это обычно полезно с параметром
:context:.
Кроме того, данная директива поддерживает все параметры директивы image, за исключением target (поскольку plot добавит свой собственный target). Они включают в себя alt, height, width, scale, align и class.
Параметры конфигурации
Директива plot имеет следующие параметры конфигурации:
- plot_include_source
- Значение по умолчанию для параметра include-source
- plot_html_show_source_link
- Определяет, показывать ли ссылку на исходный код в HTML.
- plot_pre_code
-
Код, который должен выполняться перед каждым графиком. Если не указано или равно None, по умолчанию будет строка, содержащая:
import numpy as np from matplotlib import pyplot as plt
- plot_basedir
- Базовая директория, относительно которой имена файлов
plot::относятся. (Если None или пустая строка, имена файлов относятся к директории файла, содержащего директиву.) - plot_formats
-
Форматы файлов для генерации. Список кортежей или строк:
[(suffix, dpi), suffix, ...]
которые определяют формат файла и DPI. Для записей, где DPI не указано, выбираются разумные значения по умолчанию. При передаче с командной строки через sphinx_build список должен передаваться как suffix:dpi,suffix:dpi, ...
- plot_html_show_formats
- Определяет, показывать ли ссылки на файлы в HTML.
- plot_rcparams
- Словарь, содержащий любые нестандартные rcParams, которые должны быть применены перед каждым графиком.
- plot_apply_rcparams
- По умолчанию, rcParams применяются, когда параметр
contextне используется в директиве plot. Этот параметр конфигурации переопределяет это поведение и применяет rcParams перед каждым графиком. - plot_working_directory
- По умолчанию рабочая директория будет изменена на директорию примера, чтобы код мог получить доступ к его файлам данных, если таковые имеются. Также её путь будет добавлен в
sys.path, чтобы он мог импортировать любые вспомогательные модули, расположенные рядом. Этот параметр конфигурации может использоваться для указания центральной директории (также добавленной вsys.path), где хранятся файлы данных и вспомогательные модули для всего кода. - plot_template
- Предоставляет настраиваемый шаблон для подготовки restructured text.
-
class matplotlib.sphinxext.plot_directive.PlotDirective(name, arguments, options, content, lineno, content_offset, block_text, state, state_machine)[source] -
Реализация директивы
.. plot::.Подробности см. в строке документации модуля.
-
run(self)[source] -
Выполнение директивы plot.
-
-
exception matplotlib.sphinxext.plot_directive.PlotError[source]
-
matplotlib.sphinxext.plot_directive.mark_plot_labels(app, document)[source] -
Для того чтобы графики были ссылаемыми, нам нужно перенести ссылку из узла "htmlonly" (или "latexonly") в сам узел фигуры.
-
matplotlib.sphinxext.plot_directive.out_of_date(original, derived)[source] -
Возвращает, является ли derived устаревшим по отношению к original, оба из которых полные пути к файлам.
-
matplotlib.sphinxext.plot_directive.plot_directive(name, arguments, options, content, lineno, content_offset, block_text, state, state_machine)[source] -
[Устарело] Реализация директивы
.. plot::.Подробности см. в строке документации модуля.
Примечания
Устарело начиная с версии 3.1.
-
matplotlib.sphinxext.plot_directive.render_figures(code, code_path, output_dir, output_base, context, function_name, config, context_reset=False, close_figs=False)[source] -
Выполнить скрипт pyplot и сохранить изображения в output_dir.
Сохранить изображения в output_dir с именами файлов, полученными из output_base
-
matplotlib.sphinxext.plot_directive.run_code(code, code_path, ns=None, function_name=None)[source] -
Импортировать Python-модуль из пути и выполнить функцию, заданную именем, если function_name не равно None.
-
matplotlib.sphinxext.plot_directive.split_code_at_show(text)[source] -
Разделить код на plt.show().
-
matplotlib.sphinxext.plot_directive.unescape_doctest(text)[source] -
Извлечь код из фрагмента текста, который содержит либо код Python, либо doctest.
© 2012–2018 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.2.2/api/sphinxext_plot_directive_api.html