Spec-Zone.ru › Matplotlib

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, если они доступны для записи. В противном случае используется tempfile.gettempdir стандартной библиотеки Python для поиска каталога, в котором создаётся подкаталог matplotlib.

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

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

END_OF_DOCUMENT_MARKER

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

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

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

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

Параметры:
backendstr

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

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

или строка в формате: module://my.module.name.

notebook — синоним для nbAgg.

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

END_OF_DOCUMENT_MARKER

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

matplotlib.rcParams[source]

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

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

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

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

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

  • _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.automargin
  • 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.interpolation_stage
  • 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
  • macosx.window_mode
  • markers.fillstyle
  • mathtext.bf
  • mathtext.bfit
  • 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.ndivs
  • 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.ndivs
  • 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 или путь

Файл с настройками 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')

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

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 или путь

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

use_default_templatebool

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

matplotlib.rc_params(fail_on_error=False)[source]

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

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

Создание RcParams из файла fname.

Параметры:
fnamestr или путь

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

fail_on_errorbool

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

use_default_templatebool

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

END_OF_DOCUMENT_MARKER
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)

Чтобы получить список всех зарегистрированных цветовых карт, можно сделать следующее:

from matplotlib import colormaps
list(colormaps)
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_configdir, за исключением использования $XDG_CACHE_HOME/$HOME/.cache.

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

Spec-Zone.ru

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