Spec-Zone.ru › Matplotlib 3.7

matplotlib

Объектно-ориентированная библиотека для построения графиков.

Процедурный интерфейс предоставляется модулем pyplot, который можно импортировать напрямую, например:

import matplotlib.pyplot as plt

или используя ipython:

ipython

в вашей консоли, за которым следует:

In [1]: %matplotlib
In [2]: import matplotlib.pyplot as plt

в приглашении ipython.

В основном, при программировании рекомендуется использовать явный объектно-ориентированный интерфейс; неявный интерфейс pyplot предназначен в основном для интерактивной работы. Исключение составляют функции pyplot pyplot.figure, pyplot.subplot, pyplot.subplots и pyplot.savefig, которые значительно упрощают скрипты. См. Интерфейсы приложений Matplotlib (API) для объяснения компромиссов между неявными и явными интерфейсами.

Модули включают:

matplotlib.axes

Класс Axes. Большинство функций pyplot являются обёртками над методами Axes. Модуль axes является наиболее высоким уровнем объектно-ориентированного доступа к библиотеке.

matplotlib.figure

Класс Figure.

matplotlib.artist

Базовый класс Artist для всех классов, которые рисуют элементы.

matplotlib.lines

Класс Line2D для рисования линий и маркеров.

matplotlib.patches

Классы для рисования полигонов.

matplotlib.text

Классы Text и Annotation.

matplotlib.image

Классы AxesImage и FigureImage.

matplotlib.collections

Классы для эффективного рисования групп линий или полигонов.

matplotlib.colors

Определения цветов и создание цветовых карт.

matplotlib.cm

Цветовые карты и миксин-класс ScalarMappable для предоставления функциональности сопоставления цветов другим классам.

matplotlib.ticker

Вычисление местоположения делений и форматирование меток делений.

matplotlib.backends

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

Основной пространство имён matplotlib включает:

rcParams

Настройки параметров по умолчанию; их значения по умолчанию могут быть изменены с помощью файла matplotlibrc.

use

Установка бэкэнда Matplotlib. Это следует сделать перед созданием любого графика, потому что после этого переключение между различными бэкэндами графических интерфейсов невозможно.

Следующие переменные окружения могут использоваться для настройки поведения:

MPLBACKEND

Эта необязательная переменная может быть установлена для выбора бэкэнда Matplotlib. См. Что такое бэкэнд?.

MPLCONFIGDIR

Это каталог, используемый для хранения пользовательских настроек Matplotlib, а также некоторых кэшей для повышения производительности. Если MPLCONFIGDIR не определена, на Linux используется HOME/.config/matplotlib и HOME/.cache/matplotlib, а на других платформах — HOME/.matplotlib, если они доступны для записи. В противном случае, для поиска базового каталога, в котором создаётся подкаталог matplotlib, используется стандартная библиотека Python tempfile.gettempdir.

Matplotlib была первоначально написана Джоном Д. Хантером (1968-2012) и сейчас разрабатывается и поддерживается другими.

Иногда внутренняя документация (docstrings на Python) будет ссылаться на MATLAB®, зарегистрированный товарный знак The MathWorks, Inc.

Управление бэкендом

matplotlib.use(backend, *, force=True)[source]

Выбор бэкенда, используемого для отрисовки и интеграции графического интерфейса.

Если pyplot уже импортирован, используется switch_backend, и если новый бэкенд отличается от текущего, все фигуры будут закрыты.

Параметры:
backendstr

Бэкенд, на который требуется переключиться. Это может быть одно из стандартных имён бэкендов, нечувствительных к регистру:

  • интерактивные бэкенды: GTK3Agg, GTK3Cairo, GTK4Agg, GTK4Cairo, MacOSX, nbAgg, QtAgg, QtCairo, TkAgg, TkCairo, WebAgg, WX, WXAgg, WXCairo, Qt5Agg, Qt5Cairo
  • неинтерактивные бэкенды: agg, cairo, pdf, pgf, ps, svg, template

или строка вида: module://my.module.name.

Переключение на интерактивный бэкенд невозможно, если уже запущен отдельный цикл событий (например, переключение на GTK3Agg, если уже открыто окно TkAgg). Переключение на неинтерактивный бэкенд всегда возможно.

forcebool, по умолчанию: True

Если True (по умолчанию), генерируется ImportError, если бэкенд не может быть настроен (либо из-за сбоя импорта, либо из-за того, что уже запущена несовместимая графическая интерактивная среда); если False, ошибка игнорируется.

См. также

Бэкенды
matplotlib.get_backend
matplotlib.pyplot.switch_backend
matplotlib.get_backend()[source]

Возвращает имя текущего бэкенда.

См. также

matplotlib.use
matplotlib.interactive(b)[source]

Устанавливает, перерисовывать ли после каждой команды построения (например, pyplot.xlabel).

matplotlib.is_interactive()[source]

Возвращает, перерисовывать ли после каждой команды построения.

Примечание

Эта функция предназначена только для использования в бэкендах. Конечные пользователи должны использовать pyplot.isinteractive вместо неё.

Значения по умолчанию и стили

matplotlib.rcParams[source]

Экземпляр RcParams для обработки значений по умолчанию Matplotlib.

classmatplotlib.RcParams(*args, **kwargs)[source]

Словарная структура с ключами-значениями параметров конфигурации, включая валидацию.

Функции валидации определены и связаны с параметрами rc в matplotlib.rcsetup.

Список параметров rcParams:

  • _internal.classic_mode
  • agg.path.chunksize
  • animation.bitrate
  • animation.codec
  • animation.convert_args
  • animation.convert_path
  • animation.embed_limit
  • animation.ffmpeg_args
  • animation.ffmpeg_path
  • animation.frame_format
  • animation.html
  • animation.writer
  • axes.autolimit_mode
  • axes.axisbelow
  • axes.edgecolor
  • axes.facecolor
  • axes.formatter.limits
  • axes.formatter.min_exponent
  • axes.formatter.offset_threshold
  • axes.formatter.use_locale
  • axes.formatter.use_mathtext
  • axes.formatter.useoffset
  • axes.grid
  • axes.grid.axis
  • axes.grid.which
  • axes.labelcolor
  • axes.labelpad
  • axes.labelsize
  • axes.labelweight
  • axes.linewidth
  • axes.prop_cycle
  • axes.spines.bottom
  • axes.spines.left
  • axes.spines.right
  • axes.spines.top
  • axes.titlecolor
  • axes.titlelocation
  • axes.titlepad
  • axes.titlesize
  • axes.titleweight
  • axes.titley
  • axes.unicode_minus
  • axes.xmargin
  • axes.ymargin
  • axes.zmargin
  • axes3d.grid
  • axes3d.xaxis.panecolor
  • axes3d.yaxis.panecolor
  • axes3d.zaxis.panecolor
  • backend
  • backend_fallback
  • boxplot.bootstrap
  • boxplot.boxprops.color
  • boxplot.boxprops.linestyle
  • boxplot.boxprops.linewidth
  • boxplot.capprops.color
  • boxplot.capprops.linestyle
  • boxplot.capprops.linewidth
  • boxplot.flierprops.color
  • boxplot.flierprops.linestyle
  • boxplot.flierprops.linewidth
  • boxplot.flierprops.marker
  • boxplot.flierprops.markeredgecolor
  • boxplot.flierprops.markeredgewidth
  • boxplot.flierprops.markerfacecolor
  • boxplot.flierprops.markersize
  • boxplot.meanline
  • boxplot.meanprops.color
  • boxplot.meanprops.linestyle
  • boxplot.meanprops.linewidth
  • boxplot.meanprops.marker
  • boxplot.meanprops.markeredgecolor
  • boxplot.meanprops.markerfacecolor
  • boxplot.meanprops.markersize
  • boxplot.medianprops.color
  • boxplot.medianprops.linestyle
  • boxplot.medianprops.linewidth
  • boxplot.notch
  • boxplot.patchartist
  • boxplot.showbox
  • boxplot.showcaps
  • boxplot.showfliers
  • boxplot.showmeans
  • boxplot.vertical
  • boxplot.whiskerprops.color
  • boxplot.whiskerprops.linestyle
  • boxplot.whiskerprops.linewidth
  • boxplot.whiskers
  • contour.algorithm
  • contour.corner_mask
  • contour.linewidth
  • contour.negative_linestyle
  • date.autoformatter.day
  • date.autoformatter.hour
  • date.autoformatter.microsecond
  • date.autoformatter.minute
  • date.autoformatter.month
  • date.autoformatter.second
  • date.autoformatter.year
  • date.converter
  • date.epoch
  • date.interval_multiples
  • docstring.hardcopy
  • errorbar.capsize
  • figure.autolayout
  • figure.constrained_layout.h_pad
  • figure.constrained_layout.hspace
  • figure.constrained_layout.use
  • figure.constrained_layout.w_pad
  • figure.constrained_layout.wspace
  • figure.dpi
  • figure.edgecolor
  • figure.facecolor
  • figure.figsize
  • figure.frameon
  • figure.hooks
  • figure.labelsize
  • figure.labelweight
  • figure.max_open_warning
  • figure.raise_window
  • figure.subplot.bottom
  • figure.subplot.hspace
  • figure.subplot.left
  • figure.subplot.right
  • figure.subplot.top
  • figure.subplot.wspace
  • figure.titlesize
  • figure.titleweight
  • font.cursive
  • font.family
  • font.fantasy
  • font.monospace
  • font.sans-serif
  • font.serif
  • font.size
  • font.stretch
  • font.style
  • font.variant
  • font.weight
  • grid.alpha
  • grid.color
  • grid.linestyle
  • grid.linewidth
  • hatch.color
  • hatch.linewidth
  • hist.bins
  • image.aspect
  • image.cmap
  • image.composite_image
  • image.interpolation
  • image.lut
  • image.origin
  • image.resample
  • interactive
  • keymap.back
  • keymap.copy
  • keymap.forward
  • keymap.fullscreen
  • keymap.grid
  • keymap.grid_minor
  • keymap.help
  • keymap.home
  • keymap.pan
  • keymap.quit
  • keymap.quit_all
  • keymap.save
  • keymap.xscale
  • keymap.yscale
  • keymap.zoom
  • legend.borderaxespad
  • legend.borderpad
  • legend.columnspacing
  • legend.edgecolor
  • legend.facecolor
  • legend.fancybox
  • legend.fontsize
  • legend.framealpha
  • legend.frameon
  • legend.handleheight
  • legend.handlelength
  • legend.handletextpad
  • legend.labelcolor
  • legend.labelspacing
  • legend.loc
  • legend.markerscale
  • legend.numpoints
  • legend.scatterpoints
  • legend.shadow
  • legend.title_fontsize
  • lines.antialiased
  • lines.color
  • lines.dash_capstyle
  • lines.dash_joinstyle
  • lines.dashdot_pattern
  • lines.dashed_pattern
  • lines.dotted_pattern
  • lines.linestyle
  • lines.linewidth
  • lines.marker
  • lines.markeredgecolor
  • lines.markeredgewidth
  • lines.markerfacecolor
  • lines.markersize
  • lines.scale_dashes
  • lines.solid_capstyle
  • lines.solid_joinstyle
  • markers.fillstyle
  • mathtext.bf
  • mathtext.cal
  • mathtext.default
  • mathtext.fallback
  • mathtext.fontset
  • mathtext.it
  • mathtext.rm
  • mathtext.sf
  • mathtext.tt
  • patch.antialiased
  • patch.edgecolor
  • patch.facecolor
  • patch.force_edgecolor
  • patch.linewidth
  • path.effects
  • path.simplify
  • path.simplify_threshold
  • path.sketch
  • path.snap
  • pcolor.shading
  • pcolormesh.snap
  • pdf.compression
  • pdf.fonttype
  • pdf.inheritcolor
  • pdf.use14corefonts
  • pgf.preamble
  • pgf.rcfonts
  • pgf.texsystem
  • polaraxes.grid
  • ps.distiller.res
  • ps.fonttype
  • ps.papersize
  • ps.useafm
  • ps.usedistiller
  • savefig.bbox
  • savefig.directory
  • savefig.dpi
  • savefig.edgecolor
  • savefig.facecolor
  • savefig.format
  • savefig.orientation
  • savefig.pad_inches
  • savefig.transparent
  • scatter.edgecolors
  • scatter.marker
  • svg.fonttype
  • svg.hashsalt
  • svg.image_inline
  • text.antialiased
  • text.color
  • text.hinting
  • text.hinting_factor
  • text.kerning_factor
  • text.latex.preamble
  • text.parse_math
  • text.usetex
  • timezone
  • tk.window_focus
  • toolbar
  • webagg.address
  • webagg.open_in_browser
  • webagg.port
  • webagg.port_retries
  • xaxis.labellocation
  • xtick.alignment
  • xtick.bottom
  • xtick.color
  • xtick.direction
  • xtick.labelbottom
  • xtick.labelcolor
  • xtick.labelsize
  • xtick.labeltop
  • xtick.major.bottom
  • xtick.major.pad
  • xtick.major.size
  • xtick.major.top
  • xtick.major.width
  • xtick.minor.bottom
  • xtick.minor.pad
  • xtick.minor.size
  • xtick.minor.top
  • xtick.minor.visible
  • xtick.minor.width
  • xtick.top
  • yaxis.labellocation
  • ytick.alignment
  • ytick.color
  • ytick.direction
  • ytick.labelcolor
  • ytick.labelleft
  • ytick.labelright
  • ytick.labelsize
  • ytick.left
  • ytick.major.left
  • ytick.major.pad
  • ytick.major.right
  • ytick.major.size
  • ytick.major.width
  • ytick.minor.left
  • ytick.minor.pad
  • ytick.minor.right
  • ytick.minor.size
  • ytick.minor.visible
  • ytick.minor.width
  • ytick.right

См. также

Файл matplotlibrc
find_all(pattern)[source]

Возвращает подмножество словаря RcParams, ключи которого соответствуют заданному pattern, используя re.search().

Примечание

Изменения в возвращаемом словаре не распространяются на родительский словарь RcParams.

copy()[source]

Копирует этот экземпляр RcParams.

END_OF_DOCUMENT_MARKER
matplotlib.rc_context(rc=None, fname=None)[source]

Возвращает контекстный менеджер для временного изменения rcParams.

rcParams["backend"] не будет сброшен контекстным менеджером.

rcParams, изменённые как во время вызова контекстного менеджера, так и внутри тела контекста, будут сброшены при выходе из контекста.

Параметры:
rcdict

rcParams, которые временно нужно установить.

fnamestr или path-like

Файл с настройками Matplotlib rc. Если заданы и fname, и rc, настройки из rc имеют приоритет.

См. также

Файл matplotlibrc

Примеры

Передача явных значений через словарь:

with mpl.rc_context({'interactive': False}):
    fig, ax = plt.subplots()
    ax.plot(range(3), range(3))
    fig.savefig('example.png')
    plt.close(fig)

Загрузка настроек из файла:

with mpl.rc_context(fname='print.rc'):
    plt.plot(x, y)  # uses 'print.rc'

Установка в теле контекста:

with mpl.rc_context():
    # will be reset
    mpl.rcParams['lines.linewidth'] = 5
    plt.plot(x, y)
matplotlib.rc(group, **kwargs)[source]

Устанавливает текущие rcParams. group — группа rc, например, для lines.linewidth группа — lines, для axes.facecolor, группа — axes, и так далее. Группа также может быть списком или кортежем имён групп, например, (xtick, ytick). kwargs — словарь пар имя/значение атрибутов, например:

rc('lines', linewidth=2, color='r')

устанавливает текущие rcParams и эквивалентно:

rcParams['lines.linewidth'] = 2
rcParams['lines.color'] = 'r'

Доступны следующие алиасы для экономии набора текста в интерактивном режиме:

Псевдоним

Свойство

'lw'

'linewidth'

'ls'

'linestyle'

'c'

'color'

'fc'

'facecolor'

'ec'

'edgecolor'

'mew'

'markeredgewidth'

'aa'

'antialiased'

Таким образом, вы можете сократить вышеупомянутый вызов до:

rc('lines', lw=2, c='r')

Обратите внимание, что вы можете использовать механизм словарей kwargs Python для хранения словарей параметров по умолчанию. Например, вы можете настроить параметры шрифта rc следующим образом:

font = {'family' : 'monospace',
        'weight' : 'bold',
        'size'   : 'larger'}
rc('font', **font)  # pass in the font dict as kwargs

Это позволяет легко переключаться между несколькими конфигурациями. Используйте matplotlib.style.use('default') или rcdefaults(), чтобы восстановить значения rcParams по умолчанию после внесённых изменений.

Примечания

Аналогичные функции доступны с использованием обычного интерфейса словаря, т.е. rcParams.update({"lines.linewidth": 2, ...}) (но rcParams.update не поддерживает сокращения или группирование).

matplotlib.rcdefaults()[source]

Восстанавливает rcParams из внутренних стилей по умолчанию Matplotlib.

Стилевые запрещённые rcParams (определённые в matplotlib.style.core.STYLE_BLACKLIST) не обновляются.

См. также

matplotlib.rc_file_defaults

Восстанавливает rcParams из первоначального файла rc, загруженного Matplotlib.

matplotlib.style.use

Использование определённого файла стиля. Вызовите style.use('default') для восстановления стиля по умолчанию.

matplotlib.rc_file_defaults()[source]

Восстанавливает rcParams из первоначального файла rc, загруженного Matplotlib.

Стилевые запрещённые rcParams (определённые в matplotlib.style.core.STYLE_BLACKLIST) не обновляются.

matplotlib.rc_file(fname, *, use_default_template=True)[source]

Обновление rcParams из файла.

Стилевые запрещённые rcParams (определённые в matplotlib.style.core.STYLE_BLACKLIST) не обновляются.

Параметры:
fnamestr или path-like

Файл с настройками Matplotlib rc.

use_default_templatebool

Если True, инициализирует параметры значениями по умолчанию перед обновлением значениями из данного файла. Если False, текущая конфигурация сохраняется, и обновляются только параметры, указанные в файле.

matplotlib.rc_params(fail_on_error=False)[source]

Создаёт экземпляр RcParams из файла rc по умолчанию Matplotlib.

matplotlib.rc_params_from_file(fname, fail_on_error=False, use_default_template=True)[source]

Создаёт RcParams из файла fname.

Параметры:
fnamestr или path-like

Файл с настройками Matplotlib rc.

fail_on_errorbool

Если True, генерирует ошибку, когда анализатор не может преобразовать параметр.

use_default_templatebool

Если True, инициализирует значениями по умолчанию перед обновлением значениями из данного файла. Если False, класс конфигурации содержит только параметры, указанные в файле. (Полезно для обновления словарей).

matplotlib.get_configdir()[source]

Возвращает строку пути к директории конфигурации.

Директория выбирается следующим образом:

  1. Если переменная среды MPLCONFIGDIR задана, выбирается она.
  2. В Linux, следуя спецификации XDG, сначала проверяется $XDG_CONFIG_HOME, если определено, или $HOME/.config. На других платформах выбирается $HOME/.matplotlib.
  3. Если выбранная директория существует и доступна для записи, она используется в качестве директории конфигурации.
  4. В противном случае создается временная директория, и она используется как директория конфигурации.
matplotlib.matplotlib_fname()[source]

Получить расположение файла конфигурации.

Расположение файла определяется в следующей последовательности:

  • $PWD/matplotlibrc
  • $MATPLOTLIBRC если это не каталог
  • $MATPLOTLIBRC/matplotlibrc
  • $MPLCONFIGDIR/matplotlibrc
  • В Linux:
    • $XDG_CONFIG_HOME/matplotlib/matplotlibrc (если $XDG_CONFIG_HOME определена)
    • или $HOME/.config/matplotlib/matplotlibrc (если $XDG_CONFIG_HOME не определена)
  • На других платформах - $HOME/.matplotlib/matplotlibrc если $HOME определена
  • Наконец, проверяется $MATPLOTLIBDATA/matplotlibrc, которая всегда должна существовать.
matplotlib.get_data_path()[source]

Возвращает путь к данным Matplotlib.

Ведение журнала

matplotlib.set_loglevel(level)[source]

Настройка уровней ведения журнала Matplotlib.

Matplotlib использует стандартную библиотеку logging в корневом логгере 'matplotlib'. Это вспомогательная функция для:

  • установки уровня корневого логгера Matplotlib
  • установки уровня обработчика корневого логгера, создавая обработчик, если он еще не существует

Обычно, для получения дополнительной отладочной информации, следует вызвать set_loglevel("info") или set_loglevel("debug").

Пользователи или приложения, устанавливающие собственные обработчики журналов, могут напрямую манипулировать logging.getLogger('matplotlib') вместо использования этой функции.

Параметры:
level{"notset", "debug", "info", "warning", "error", "critical"}

Уровень журнала обработчика.

Примечания

В первый раз, когда эта функция вызывается, дополнительный обработчик добавляется к корневому обработчику Matplotlib; этот обработчик используется повторно каждый раз, и эта функция просто манипулирует уровнем логгера и обработчика.

Цветовые карты и последовательности цветов

matplotlib.colormaps[source]

Контейнер для цветовых карт, известных Matplotlib по имени.

Универсальный экземпляр реестра — matplotlib.colormaps. Пользователям не нужно создавать экземпляры ColormapRegistry самостоятельно.

Чтение использует интерфейс типа словаря, сопоставляющий имена с Colormap:

import matplotlib as mpl
cmap = mpl.colormaps['viridis']

Возвращаемые Colormap являются копиями, поэтому их изменение не изменяет глобальное определение цветовой карты.

Дополнительные цветовые карты можно добавить с помощью ColormapRegistry.register:

mpl.colormaps.register(my_colormap)
matplotlib.color_sequences[source]

Контейнер для последовательностей цветов, известных Matplotlib по имени.

Универсальный экземпляр реестра — matplotlib.color_sequences. Пользователям не нужно создавать экземпляры ColorSequenceRegistry самостоятельно.

Чтение использует интерфейс типа словаря, сопоставляющий имена со списками цветов:

import matplotlib as mpl
cmap = mpl.color_sequences['tab10']

Возвращаемые списки являются копиями, поэтому их изменение не меняет глобальное определение последовательности цветов.

Дополнительные последовательности цветов можно добавить с помощью ColorSequenceRegistry.register:

mpl.color_sequences.register('rgb', ['r', 'g', 'b'])

Разное

classmatplotlib.MatplotlibDeprecationWarning[source]

Класс для выдачи предупреждений об устаревании для пользователей Matplotlib.

matplotlib.get_cachedir()[source]

Возвращает строку пути к кеш-директории.

Процедура поиска директории аналогична _get_config_dir, но используется $XDG_CACHE_HOME/$HOME/.cache вместо неё.

© 2012–2023 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.7.5/api/matplotlib_configuration_api.html

Spec-Zone.ru

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