Spec-Zone.ru › Matplotlib 3.8

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. Это необходимо сделать до создания любого графика, поскольку переключение между различными GUI бэкендами после этого невозможно.

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

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, 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
  • 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, ключи которого соответствуют, используя re.search(), данному pattern.

Примечание

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

copy()[source]

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

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

Вы можете использовать возможности 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 из файла настроек по умолчанию Matplotlib rc.

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, класс конфигурации содержит только параметры, указанные в файле (полезно для обновления словарей).

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/3.8.4/api/matplotlib_configuration_api.html

Spec-Zone.ru

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