Spec-Zone.ru › Matplotlib 3.7

matplotlib.widgets

Inheritance diagram of matplotlib.widgets

Виджеты, независимые от GUI

Виджеты, разработанные для работы с любыми графическими интерфейсами. Все эти виджеты требуют предварительного определения экземпляра matplotlib.axes.Axes и передачи его в качестве первого параметра. Matplotlib не пытается быть слишком умным в отношении макета — вам придется определить желаемую ширину и высоту вашего Axes для размещения виджета.

classmatplotlib.widgets.AxesWidget(ax)[исходный код]

Базовые классы: Widget

Виджет, связанный с одним Axes.

Для обеспечения реагирования и предотвращения сборки мусора виджета, пользователь должен сохранить ссылку на объект.

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

Атрибуты:
axAxes

Родительский Axes для виджета.

canvasFigureCanvasBase

Родительский холст фигуры для виджета.

activebool

Является ли виджет активным?

connect_event(event, callback)[исходный код]

Подключение обратной функции к событию.

Это следует использовать вместо figure.canvas.mpl_connect, так как эта функция хранит идентификаторы обратных вызовов для последующей очистки.

disconnect_events()[исходный код]

Отключение всех событий, созданных этим виджетом.

END_OF_DOCUMENT_MARKER
classmatplotlib.widgets.Button(ax, label, image=None, color='0.85', hovercolor='0.95', *, useblit=True)[исходный код]

Базовые классы: AxesWidget

Кнопка, нейтральная по отношению к графическому интерфейсу.

Для сохранения реакции кнопки необходимо сохранить ссылку на неё. Вызовите on_clicked для подключения обработчика.

Атрибуты:
ax

Объект matplotlib.axes.Axes, в который отрисовывается кнопка.

label

Экземпляр matplotlib.text.Text.

color

Цвет кнопки при отсутствии наведения.

hovercolor

Цвет кнопки при наведении.

Параметры:
axAxes

Объект Axes, в который будет размещена кнопка.

labelstr

Текст кнопки.

imagearray-like или PIL Image

Изображение для размещения в кнопке, если не None. Параметр передаётся напрямую в imshow.

colorцвет

Цвет кнопки при отсутствии активации.

hovercolorцвет

Цвет кнопки при наведении курсора.

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

Использовать кеширование (blitting) для более быстрого отображения, если поддерживается бэкендом. Подробности в учебном пособии Ускорение отрисовки с помощью кеширования.

Новая версия 3.7.

disconnect(cid)[исходный код]

Удалить функцию обратного вызова с идентификатором соединения cid.

on_clicked(func)[исходный код]

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

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

classmatplotlib.widgets.CheckButtons(ax, labels, actives=None, *, useblit=True, label_props=None, frame_props=None, check_props=None)[исходный код]

Основания: AxesWidget

Нейтральный для графических интерфейсов набор флажков.

Для того, чтобы флажки оставались реагирующими, необходимо сохранить ссылку на этот объект.

Подключитесь к флажкам с помощью метода on_clicked.

Атрибуты:
axAxes

Родительский Axes для виджета.

labelsсписок Text
rectanglesсписок Rectangle

[Устарело]

linesсписок пар (Line2D, Line2D)

[Устарело]

Добавьте флажки в экземпляр matplotlib.axes.Axes ax.

Параметры:
axAxes

Родительский Axes для виджета.

labelsсписок строк

Метки флажков.

activesсписок булевых значений, необязательно

Начальные состояния флажков. Список должен иметь такую же длину, как и labels. Если не указано, все флажки будут сняты.

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

Использовать blitting для более быстрого рисования, если это поддерживается бэкэндом. Подробности см. в руководстве Более быстрое отображение с помощью blitting.

Новое в версии 3.7.

label_propsсловарь, необязательно

Словарь свойств Text для меток.

Новое в версии 3.7.

frame_propsсловарь, необязательно

Словарь свойств коллекции Collection для рамки флажка. По умолчанию используется размер (размер шрифта метки / 2)**2, черный цвет контура, без цвета заливки и ширина линии 1.0.

Новое в версии 3.7.

check_propsсловарь, необязательно

Словарь свойств коллекции Collection для отметки флажка. По умолчанию используется размер (размер шрифта метки / 2)**2, черный цвет, и ширина линии 1.0.

Новое в версии 3.7.

disconnect(cid)[исходный код]

Удалить наблюдателя с идентификатором подключения cid.

get_status()[исходный код]

Возвращает список статусов (True/False) всех флажков.

propertylines[исходный код]

[Устарело]

Примечания

Устарело начиная с версии 3.7: Любые пользовательские стили свойств могут быть потеряны.

on_clicked(func)[исходный код]

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

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

propertyrectangles[исходный код]

[Устарело]

Примечания

Устарело начиная с версии 3.7: Любые пользовательские стили свойств могут быть потеряны.

set_active(index)[исходный код]

Переключает (активирует или деактивирует) флажок по индексу.

Обратные вызовы будут вызваны, если eventson равно True.

Параметры:
indexint

Индекс флажка для переключения.

Исключения:
ValueError

Если index недопустим.

set_check_props(props)[исходный код]

Устанавливает свойства отметки флажка.

Новое в версии 3.7.

Параметры:
propsсловарь

Словарь свойств Collection для отметки флажка.

set_frame_props(props)[исходный код]

Устанавливает свойства рамок флажка.

Новое в версии 3.7.

Параметры:
propsсловарь

Словарь свойств Collection для рамок флажка.

set_label_props(props)[исходный код]

Установить свойства меток Text.

Добавлена в версии 3.7.

Параметры:
propsdict

Словарь свойств Text для меток.

classmatplotlib.widgets.Cursor(ax, *, horizOn=True, vertOn=True, useblit=False, **lineprops)[исходный код]

Базовый класс: AxesWidget

Перекрестие-курсор, охватывающее область осей и перемещающееся вслед за курсором мыши.

Чтобы курсор оставался отзывчивым, необходимо сохранить ссылку на него.

Параметры:
axAxes

Объект Axes, к которому нужно прикрепить курсор.

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

Отображать ли горизонтальную линию.

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

Отображать ли вертикальную линию.

useblitbool, по умолчанию: False

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

Другие параметры:
**lineprops

Свойства Line2D, управляющие внешним видом линий. См. также axhline.

Примеры

См. Курсор.

clear(event)[исходный код]

Внутренний обработчик событий для очистки курсора.

onmove(event)[исходный код]

Внутренний обработчик событий для отображения курсора при перемещении мыши.

classmatplotlib.widgets.EllipseSelector(ax, onselect, *, minspanx=0, minspany=0, useblit=False, props=None, spancoords='data', button=None, grab_range=10, handle_props=None, interactive=False, state_modifier_keys=None, drag_from_anywhere=False, ignore_event_outside=False, use_data_coordinates=False)[исходный код]

Базовый класс: RectangleSelector

Выбрать эллиптическую область осей.

Чтобы курсор оставался отзывчивым, необходимо сохранить ссылку на него.

События нажатия и отпускания мыши, сгенерированные в одних и тех же координатах вне выделения, приведут к удалению выделения, за исключением случаев, когда ignore_event_outside=True.

Параметры:
axAxes

Родительские оси виджета.

onselectфункция

Функция обратного вызова, вызываемая после события отпускания мыши, при создании, изменении или удалении выделения. Она должна иметь следующий вид:

def onselect(eclick: MouseEvent, erelease: MouseEvent)

где eclick и erelease — события нажатия и отпускания мыши MouseEvent, которые инициируют и завершают выбор.

minspanxfloat, по умолчанию: 0

Выделения с размером по оси x, меньшим или равным minspanx, удаляются (если уже существуют) или отменяются.

minspanyfloat, по умолчанию: 0

Выделения с размером по оси y, меньшим или равным minspany, удаляются (если уже существуют) или отменяются.

useblitbool, по умолчанию: False

Использовать ли кеширование для более быстрого отображения (если поддерживается бэкендом). Подробнее см. руководство Более быстрое отображение с помощью кеширования.

propsdict, необязательно

Свойства, с помощью которых отрисовывается эллипс. Допустимые свойства см. в matplotlib.patches.Patch. По умолчанию:

dict(facecolor='red', edgecolor='black', alpha=0.2, fill=True)

spancoords{"data", "pixels"}, по умолчанию: "data"

Определять ли minspanx и minspany в координатах данных или пикселях.

buttonMouseButton, список MouseButton, по умолчанию: все кнопки

Кнопка или кнопки для выбора эллипса.

grab_rangefloat, по умолчанию: 10

Расстояние в пикселях, в пределах которого можно активировать ручки интерактивного инструмента.

handle_propsdict, необязательно

Свойства, с помощью которых отрисовываются интерактивные ручки (маркеры). Допустимые свойства см. в аргументах маркеров matplotlib.lines.Line2D. Значения по умолчанию определены в mpl.rcParams, за исключением значения по умолчанию markeredgecolor, которое будет таким же, как свойство edgecolor в props.

interactivebool, по умолчанию: False

Отображать ли набор ручек, позволяющих взаимодействовать с виджетом после его создания.

state_modifier_keysdict, необязательно

Клавиши-модификаторы, влияющие на поведение виджета. Указанные значения переопределяют значения по умолчанию:

  • "move": переместить существующую фигуру; по умолчанию модификатор не используется.
  • "clear": очистить текущую фигуру; по умолчанию: "escape".
  • "square": сделать фигуру квадратной; по умолчанию: "shift".
  • "center": изменять фигуру относительно ее центра; по умолчанию: "ctrl".
  • "rotate": повернуть фигуру вокруг ее центра на угол от -45° до 45°; по умолчанию: "r".

"square" и "center" можно использовать вместе. Квадратную фигуру можно определять в координатах данных или отображения, как задано аргументом use_data_coordinates при создании селектора.

drag_from_anywherebool, по умолчанию: False

Если True, виджет можно перемещать, щелкнув в любой точке внутри его границ.

ignore_event_outsidebool, по умолчанию: False

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

use_data_coordinatesbool, по умолчанию: False

Если True, фигура «квадрат» селектора определяется в координатах данных, а не в координатах отображения.

Примеры

Прямоугольные и эллиптические селекторы

классmatplotlib.widgets.Lasso(ax, xy, callback, *, useblit=True)[исходный код]

Базовые классы: AxesWidget

Кривая выделения произвольной формы.

Выбранный путь можно использовать совместно с contains_point для выбора точек данных из изображения.

В отличие от LassoSelector, этот класс необходимо инициализировать с начальной точкой xy, а объект Lasso уничтожается при отпускании кнопки мыши.

Параметры:
axAxes

Родительский Axes для виджета.

xy(float, float)

Координаты начала выделения.

callbackвызываемый объект

При отпускании кнопки мыши функция callback вызывается с вершинами выбранного пути в качестве аргумента.

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

Использовать ли ускорение рисования с помощью blitting (если поддерживается бэкэндом). Подробности см. в руководстве Ускоренное отображение с помощью blitting.

onmove(event)[исходный код]
onrelease(event)[исходный код]
классmatplotlib.widgets.LassoSelector(ax, onselect, *, useblit=True, props=None, button=None)[исходный код]

Базовые классы: _SelectorWidget

Кривая выделения произвольной формы.

Чтобы селектор оставался отзывчивым, необходимо сохранить ссылку на него.

Выбранный путь можно использовать совместно с contains_point для выбора точек данных из изображения.

В отличие от Lasso, LassoSelector имеет интерфейс, похожий на интерфейс RectangleSelector и SpanSelector, и продолжает взаимодействовать с Axes до отключения.

Пример использования:

ax = plt.subplot()
ax.plot(x, y)

def onselect(verts):
    print(verts)
lasso = LassoSelector(ax, onselect)
Параметры:
axAxes

Родительский Axes для виджета.

onselectфункция

При отпускании кнопки мыши функция onselect вызывается с вершинами выбранного пути в качестве аргумента.

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

Использовать ли ускорение рисования с помощью blitting (если поддерживается бэкэндом). Подробности см. в руководстве Ускоренное отображение с помощью blitting.

propsdict, необязательный

Свойства, с которыми рисуется линия; допустимые свойства см. в matplotlib.lines.Line2D. Значения по умолчанию определены в mpl.rcParams.

buttonMouseButton или список объектов MouseButton, необязательный

Кнопки мыши, используемые для выделения прямоугольника. По умолчанию None, что соответствует всем кнопкам.

классmatplotlib.widgets.LockDraw[исходный код]

Базовые классы: object

Некоторые виджеты, например курсор, рисуют на холсте, и это не всегда желательно, например когда панель инструментов находится в режиме масштабирования по прямоугольнику и рисуется прямоугольник. Чтобы избежать этого, виджет может получить блокировку холста с помощью canvas.widgetlock(widget) перед рисованием на холсте; это предотвратит рисование других виджетов в это же время (если они также пытаются получить блокировку в первую очередь).

available(o)[исходный код]

Возвращает, доступно ли рисование для o.

isowner(o)[исходный код]

Возвращает, владеет ли o этой блокировкой.

locked()[исходный код]

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

release(o)[исходный код]

Освобождает блокировку, удерживаемую o.

END_OF_DOCUMENT_MARKER
classmatplotlib.widgets.MultiCursor(canvas, axes, *, useblit=True, horizOn=False, vertOn=True, **lineprops)[исходный код]

Основания: Widget

Обеспечивает вертикальный (по умолчанию) и/или горизонтальный курсор, общий для нескольких областей Axes.

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

Параметры:
canvasobject

Этот параметр полностью не используется и сохранён только для обратной совместимости.

axesсписок matplotlib.axes.Axes

Axes, к которым нужно прикрепить курсор.

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

Использовать blitting для более быстрого отрисовки, если это поддерживается бэкэндом. Подробнее см. учебник Более быстрое рендеринг с помощью blitting.

horizOnbool, по умолчанию: False

Рисовать ли горизонтальную линию.

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

Рисовать ли вертикальную линию.

Дополнительные параметры:
**lineprops

Свойства Line2D, которые контролируют внешний вид линий. Также см. axhline.

Примеры

См. Мультикурсор.

background()[исходный код]

[Устарело]

Замечания

Устарело начиная с версии 3.6:

propertycanvas[исходный код]

[Устарело]

Замечания

Устарело начиная с версии 3.6:

clear(event)[исходный код]

Очистить курсор.

connect()[исходный код]

Подключить события.

disconnect()[исходный код]

Отключить события.

needclear()[исходный код]

[Устарело]

Замечания

Устарело начиная с версии 3.7:

onmove(event)[исходный код]
classmatplotlib.widgets.PolygonSelector(ax, onselect, *, useblit=False, props=None, handle_props=None, grab_range=10, draw_bounding_box=False, box_handle_props=None, box_props=None)[исходный код]

Основания: _SelectorWidget

Выделить область многоугольника на осях.

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

Кроме того, можно использовать следующие модификаторы клавиш:

  • Удерживайте ctrl и щелкайте и перетаскивайте вершину, чтобы переместить её перед завершением многоугольника.
  • Удерживайте клавишу shift и щелкайте и перетаскивайте в любом месте осей, чтобы переместить все вершины.
  • Нажмите клавишу esc, чтобы начать новый многоугольник.

Чтобы селектор оставался отзывчивым, необходимо сохранить на него ссылку.

Параметры:
axAxes

Родительские оси виджета.

onselectфункция

Когда многоугольник завершен или изменен после завершения, функция onselect вызывается и получает список вершин в виде (xdata, ydata) кортежей.

useblitbool, по умолчанию: False

Использовать ли кеширование для более быстрого отрисовки (если поддерживается бэкендом). Подробности см. в руководстве Более быстрое отображение с помощью кеширования.

propsdict, необязательно

Свойства, с которыми рисуется линия, см. matplotlib.lines.Line2D для допустимых свойств. По умолчанию:

dict(color='k', linestyle='-', linewidth=2, alpha=0.5)

handle_propsdict, необязательно

Свойства элементов для маркеров, нарисованных в вершинах многоугольника. См. аргументы маркеров в matplotlib.lines.Line2D для допустимых свойств. Значения по умолчанию определены в mpl.rcParams за исключением значения по умолчанию markeredgecolor, которое будет таким же, как свойство color в props.

grab_rangefloat, по умолчанию: 10

Вершина выбирается (для завершения многоугольника или перемещения вершины), если щелчок мыши находится в пределах grab_range пикселей от вершины.

draw_bounding_boxbool, необязательно

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

box_handle_propsdict, необязательно

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

box_propsdict, необязательно

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

Примечания

Если после удаления точек остается только одна точка, селектор возвращается в незавершенное состояние, и можно начать рисовать новый многоугольник из существующей точки.

Примеры

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

onmove(event)[исходный код]

Обработчик событий перемещения курсора и валидатор.

propertyverts

Вершины многоугольника в виде списка (x, y) пар.

END_OF_DOCUMENT_MARKER
classmatplotlib.widgets.RadioButtons(ax, labels, active=0, activecolor=None, *, useblit=True, label_props=None, radio_props=None)[исходный код]

Основан на: AxesWidget

Радиокнопка, не зависящая от GUI.

Для того, чтобы кнопки оставались отзывчивыми, необходимо сохранить ссылку на этот объект.

Подключитесь к RadioButtons с помощью метода on_clicked.

Атрибуты:
axAxes

Родительский объект Axes для виджета.

activecolorцвет

Цвет выбранной кнопки.

labelsсписок Text

Метки кнопок.

circlesсписок Circle

[Устарело]

value_selectedстрока

Текст метки текущей выбранной кнопки.

Добавление радиокнопок в Axes.

Параметры:
axAxes

Объект Axes, в который нужно добавить кнопки.

labelsсписок строк

Метки кнопок.

activeцелое число

Индекс выбранной по умолчанию кнопки.

activecolorцвет

Цвет выбранной кнопки. По умолчанию — 'blue' (если не указано здесь или в radio_props).

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

Использовать блиттинг для более быстрого рисования, если это поддерживается бэкендом. Подробнее см. учебник Более быстрая отрисовка с помощью блиттинга.

Добавлена в версии 3.7.

label_propsсловарь или список словарей, необязательно

Словарь свойств Text, которые будут использоваться для меток.

Добавлена в версии 3.7.

radio_propsсловарь, необязательно

Словарь свойств коллекции scatter Collection, которые будут использоваться для радиокнопок. По умолчанию размер (размер шрифта метки / 2)**2, черный edgecolor и facecolor, равный activecolor (при активации).

Примечание

Если в radio_props указан facecolor, он переопределит activecolor. Это можно использовать, чтобы задать активный цвет для каждой кнопки.

Добавлена в версии 3.7.

propertyactivecolor
propertycircles[исходный код]

[Устарело]

Примечания

Устарело начиная с версии 3.7: Любые пользовательские свойства стилизации могут быть утеряны.

disconnect(cid)[исходный код]

Удаление наблюдателя с идентификатором соединения cid.

on_clicked(func)[исходный код]

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

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

set_active(index)[исходный код]

Выбрать кнопку с номером index.

Обратные вызовы будут вызваны, если eventson имеет значение True.

set_label_props(props)[исходный код]

Установка свойств меток Text.

Добавлена в версии 3.7.

Параметры:
propsсловарь

Словарь свойств Text, которые будут использоваться для меток.

set_radio_props(props)[исходный код]

Установка свойств радиокнопок Text.

Добавлена в версии 3.7.

Параметры:
propsсловарь

Словарь свойств Collection для использования с радиокнопками.

classmatplotlib.widgets.RangeSlider(ax, label, valmin, valmax, *, valinit=None, valfmt=None, closedmin=True, closedmax=True, dragging=True, valstep=None, orientation='horizontal', track_color='lightgrey', handle_style=None, **kwargs)[исходный код]

Bases: SliderBase

Ползунок, представляющий диапазон значений с плавающей точкой. Определяет минимальное и максимальное значения диапазона через атрибут val в виде кортежа (min, max).

Создаёт ползунок, определяющий диапазон, заключённый в пределах [valmin, valmax] в осях ax. Для сохранения отзывчивости ползунка необходимо сохранить ссылку на него. Для подключения к событию ползунка вызовите on_changed().

Атрибуты:
valкортеж из float

Значение ползунка.

Параметры:
axAxes

Оси, в которые нужно поместить ползунок.

labelstr

Метка ползунка.

valminfloat

Минимальное значение ползунка.

valmaxfloat

Максимальное значение ползунка.

valinitкортеж из float или None, по умолчанию: None

Начальные позиции ползунка. Если None, начальные позиции будут находиться в 25-м и 75-м процентилях диапазона.

valfmtстрока, по умолчанию: None

%-форматирующая строка для форматирования значений ползунка. Если None, используется ScalarFormatter.

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

Является ли интервал ползунка закрытым снизу.

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

Является ли интервал ползунка закрытым сверху.

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

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

valstepfloat, по умолчанию: None

Если задано, ползунок будет перемещаться с шагом valstep.

orientation{'horizontal', 'vertical'}, по умолчанию: 'horizontal'

Направление ползунка.

track_colorцвет, по умолчанию: 'lightgrey'

Цвет фоновой дорожки. Дорожка доступна для дальнейшего стилизования через атрибут track.

handle_styleсловарь

Свойства делений ползунка. Значения по умолчанию:

Ключ

Значение

По умолчанию

Описание

facecolor

цвет

'white'

Цвет заполнения делений ползунка.

edgecolor

цвет

'.75'

Цвет границы делений ползунка.

size

целое число

10

Размер делений ползунка в пунктах.

Другие значения будут преобразованы как marker{foo} и переданы конструктору Line2D. Например, handle_style = {'style'='x'} приведет к markerstyle = 'x'.

Примечания

Дополнительные kwargs передаются в self.poly, который является Polygon, рисующему элемент управления ползунка. См. документацию Polygon для допустимых имён свойств (facecolor, edgecolor, alpha, и т.д.).

on_changed(func)[исходный код]

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

Параметры:
funccallable

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

Возвращает:
int

Идентификатор соединения (который может быть использован для отключения func).

set_max(max)[исходный код]

Устанавливает максимальное значение ползунка в max.

Параметры:
maxfloat
set_min(min)[исходный код]

Устанавливает минимальное значение ползунка в min.

Параметры:
minfloat
set_val(val)[исходный код]

Устанавливает значение ползунка в val.

Параметры:
valкортеж или массив-подобный объект из float
classmatplotlib.widgets.RectangleSelector(ax, onselect, *, minspanx=0, minspany=0, useblit=False, props=None, spancoords='data', button=None, grab_range=10, handle_props=None, interactive=False, state_modifier_keys=None, drag_from_anywhere=False, ignore_event_outside=False, use_data_coordinates=False)[исходный код]

Основан на _SelectorWidget

Выделение прямоугольной области на оси.

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

События нажатия и отпускания кнопки мыши, сгенерированные в одних и тех же координатах вне выделения, приведут к очистке селектора, за исключением случаев, когда ignore_event_outside=True

Параметры:
axAxes

Родительская ось виджета.

onselectфункция

Функция обратного вызова, которая вызывается после события отпускания кнопки мыши и создания, изменения или удаления выделения. Она должна иметь следующий синтаксис:

def onselect(eclick: MouseEvent, erelease: MouseEvent)

где eclick и erelease — события нажатия и отпускания кнопки мыши MouseEvent, которые начинают и завершают выделение.

minspanxfloat, по умолчанию: 0

Выделения с шириной менее или равной minspanx удаляются (если уже существуют) или отменяются.

minspanyfloat, по умолчанию: 0

Выделения с высотой менее или равной minspanx удаляются (если уже существуют) или отменяются.

useblitbool, по умолчанию: False

Использовать ли блиттинг для более быстрой отрисовки (если поддерживается бэкендом). Подробности см. в руководстве Более быстрая отрисовка с использованием блиттинга.

propsdict, необязательно

Свойства, с помощью которых рисуется прямоугольник. См. matplotlib.patches.Patch для допустимых свойств. По умолчанию:

dict(facecolor='red', edgecolor='black', alpha=0.2, fill=True)

spancoords{"data", "pixels"}, по умолчанию: "data"

Интерпретировать ли minspanx и minspany в координатах данных или пикселей.

buttonMouseButton, список MouseButton, по умолчанию: все кнопки

Кнопка или кнопки для запуска выделения прямоугольника.

grab_rangefloat, по умолчанию: 10

Расстояние в пикселях, в пределах которого можно активировать маркеры интерактивного инструмента.

handle_propsdict, необязательно

Свойства, с помощью которых рисуются интерактивные маркеры (маркеры объектов). См. аргументы маркеров в matplotlib.lines.Line2D для допустимых свойств. Значения по умолчанию определяются в mpl.rcParams за исключением значения по умолчанию markeredgecolor, которое будет таким же, как свойство edgecolor в props.

interactivebool, по умолчанию: False

Рисовать ли набор маркеров, позволяющих взаимодействовать с виджетом после его отрисовки.

state_modifier_keysdict, необязательно

Клавиши-модификаторы, влияющие на поведение виджета. Значения переопределяют настройки по умолчанию:

  • "move": Перемещение существующей формы, по умолчанию: без модификатора.
  • "clear": Очистка текущей формы, по умолчанию: "escape".
  • "square": Придание форме квадратного вида, по умолчанию: "shift".
  • "center": Изменение формы вокруг ее центра, по умолчанию: "ctrl".
  • "rotate": Поворот формы вокруг ее центра на угол от -45° до 45°, по умолчанию: "r".

"square" и "center" можно комбинировать. Форма квадрата может быть определена в координатах данных или отображения, как указано аргументом use_data_coordinates при создании селектора.

drag_from_anywherebool, по умолчанию: False

Если True, виджет можно перемещать, нажав на любую точку внутри его границ.

ignore_event_outsidebool, по умолчанию: False

Если True, событие, сгенерированное вне селектора, будет проигнорировано.

use_data_coordinatesbool, по умолчанию: False

Если True, форма «квадрат» селектора определяется в координатах данных, а не в координатах отображения.

Примеры

>>> import matplotlib.pyplot as plt
>>> import matplotlib.widgets as mwidgets
>>> fig, ax = plt.subplots()
>>> ax.plot([1, 2, 3], [10, 50, 100])
>>> def onselect(eclick, erelease):
...     print(eclick.xdata, eclick.ydata)
...     print(erelease.xdata, erelease.ydata)
>>> props = dict(facecolor='blue', alpha=0.5)
>>> rect = mwidgets.RectangleSelector(ax, onselect, interactive=True,
...                                   props=props)
>>> fig.show()
>>> rect.add_state('square')

См. также: Селекторы прямоугольников и эллипсов

propertycenter

Центр прямоугольника в координатах данных.

propertycorners

Углы прямоугольника в координатах данных, начиная с нижнего левого и далее по часовой стрелке.

propertyedge_centers

Середины сторон прямоугольника в координатах данных, начиная с левой и далее против часовой стрелки.

propertyextents

Возвращает (xmin, xmax, ymin, ymax) в координатах данных, определяемые ограничивающим прямоугольником до поворота.

propertygeometry

Возвращает массив формы (2, 5), содержащий координаты данных x (RectangleSelector.geometry[1, :]) и y (RectangleSelector.geometry[0, :]) четырёх углов прямоугольника, начиная и заканчивая в верхнем левом углу.

propertyrotation

Угол поворота в градусах в интервале [-45°, 45°]. Поворот ограничен этим диапазоном для упрощения реализации.

classmatplotlib.widgets.Slider(ax, label, valmin, valmax, *, valinit=0.5, valfmt=None, closedmin=True, closedmax=True, slidermin=None, slidermax=None, dragging=True, valstep=None, orientation='horizontal', initcolor='r', track_color='lightgrey', handle_style=None, **kwargs)[исходный код]

Bases: SliderBase

Ползунок, представляющий числовой диапазон.

Создаёт ползунок от valmin до valmax на оси ax. Для сохранения отзывчивости ползунка, необходимо сохранить ссылку на него. Вызовите on_changed(), чтобы подключить обработчик событий ползунка.

Атрибуты:
valfloat

Значение ползунка.

Параметры:
axAxes

Ось, на которой будет размещён ползунок.

labelstr

Подпись ползунка.

valminfloat

Минимальное значение ползунка.

valmaxfloat

Максимальное значение ползунка.

valinitfloat, по умолчанию: 0.5

Начальное положение ползунка.

valfmtstr, по умолчанию: None

Строка форматирования значения ползунка в формате %. Если None, используется ScalarFormatter.

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

Закрытый ли интервал ползунка слева.

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

Закрытый ли интервал ползунка справа.

sliderminSlider, по умолчанию: None

Не допускать значения текущего ползунка меньше значения ползунка slidermin.

slidermaxSlider, по умолчанию: None

Не допускать значения текущего ползунка больше значения ползунка slidermax.

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

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

valstepfloat или массив, по умолчанию: None

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

orientation{'horizontal', 'vertical'}, по умолчанию: 'horizontal'

Направление ползунка.

initcolorцвет, по умолчанию: 'r'

Цвет линии на позиции valinit. Установите в 'none' для удаления линии.

track_colorцвет, по умолчанию: 'lightgrey'

Цвет фоновой дорожки. Доступ к дорожке для дальнейшей стилизации через атрибут track.

handle_styledict

Свойства ручки ползунка. Значения по умолчанию:

Ключ

Значение

По умолчанию

Описание

facecolor

цвет

'white'

Цвет заливки ручки ползунка.

edgecolor

цвет

'.75'

Цвет контура ручки ползунка.

size

целое число

10

Размер ручки ползунка в пунктах.

Другие значения будут преобразованы как маркер{foo} и переданы конструктору Line2D. Например, handle_style = {'style'='x'} приведет к markerstyle = 'x'.

Примечания

Дополнительные параметры kwargs передаются self.poly — это Polygon, который рисует ползунок. См. документацию Polygon для допустимых свойств (facecolor, edgecolor, alpha, и т.д.).

on_changed(func)[исходный код]

Подключить func как обработчик событий изменения значения ползунка.

Параметры:
funcвызываемая функция

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

Возвращает:
int

Идентификатор подключения (может использоваться для отключения func).

set_val(val)[исходный код]

Установить значение ползунка на val.

Параметры:
valfloat
classmatplotlib.widgets.SliderBase(ax, orientation, closedmin, closedmax, valmin, valmax, valfmt, dragging, valstep)[исходный код]

Bases: AxesWidget

Базовый класс для создания виджетов ползунков. Не предназначен для прямого использования.

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

disconnect(cid)[исходный код]

Удаляет наблюдателя с идентификатором соединения cid.

Параметры:
cidint

Идентификатор соединения наблюдателя, который нужно удалить.

reset()[исходный код]

Сбрасывает ползунок до начального значения.

classmatplotlib.widgets.SpanSelector(ax, onselect, direction, *, minspan=0, useblit=False, props=None, onmove_callback=None, interactive=False, button=None, handle_props=None, grab_range=10, state_modifier_keys=None, drag_from_anywhere=False, ignore_event_outside=False, snap_values=None)[исходный код]

Базовые классы: _SelectorWidget

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

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

Для отключения SpanSelector, установите span_selector.active в False. Чтобы включить его обратно, установите в True.

События нажатия и отпускания, сгенерированные в одних и тех же координатах вне выбора, очистят селектор, за исключением случаев, когда ignore_event_outside=True.

Параметры:
axAxes
onselectвызываемый объект

Функция обратного вызова, которая вызывается после события отпускания и создания, изменения или удаления выбора. Она должна иметь следующую сигнатуру:

def on_select(min: float, max: float) -> Any
direction{"horizontal", "vertical"}

Направление, по которому рисуется селектор.

minspanfloat, по умолчанию: 0

Если выбор меньше или равен minspan, выбор удаляется (если уже существует) или отменяется.

useblitbool, по умолчанию: False

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

propsdict, необязательный

Словарь свойств matplotlib.patches.Patch. По умолчанию:

dict(facecolor='red', alpha=0.5)

onmove_callbackfunc(min, max), min/max — числа с плавающей точкой, по умолчанию: None

Вызывается при перемещении мыши во время выбора диапазона.

span_staysbool, по умолчанию: False

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

interactivebool, по умолчанию: False

Определяет, нужно ли рисовать набор ручек для взаимодействия с виджетом после его отрисовки.

buttonMouseButton или список MouseButton, по умолчанию: все кнопки

Кнопки мыши, активирующие селектор.

handle_propsdict, по умолчанию: None

Свойства линий ручек на краях диапазона. Используются только при interactive = True. См. matplotlib.lines.Line2D для допустимых свойств.

grab_rangefloat, по умолчанию: 10

Расстояние в пикселях, в пределах которого можно активировать интерактивные инструменты.

state_modifier_keysdict, необязательный

Модификаторы клавиш, которые влияют на поведение виджета. Значения дополняют значения по умолчанию:

  • "clear": Очистить текущую форму, по умолчанию: "escape".
drag_from_anywherebool, по умолчанию: False

Если True, виджет можно переместить, нажав в любой точке внутри его границ.

ignore_event_outsidebool, по умолчанию: False

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

snap_valuesмассивоподобный объект размерности 1, необязательный

Привязывает края селектора к заданным значениям.

Примеры

>>> import matplotlib.pyplot as plt
>>> import matplotlib.widgets as mwidgets
>>> fig, ax = plt.subplots()
>>> ax.plot([1, 2, 3], [10, 50, 100])
>>> def onselect(vmin, vmax):
...     print(vmin, vmax)
>>> span = mwidgets.SpanSelector(ax, onselect, 'horizontal',
...                              props=dict(facecolor='blue', alpha=0.5))
>>> fig.show()

См. также: Селектор диапазона

connect_default_events()[исходный код]

Подключает основные события холста к методам.

propertydirection

Направление селектора: 'vertical' или 'horizontal'.

propertyextents

Возвращает границы селектора.

new_axes(ax)[исходный код]

Устанавливает SpanSelector для работы с новой осью.

classmatplotlib.widgets.SubplotTool(targetfig, toolfig)[исходный код]

Базовые классы: Widget

Инструмент для настройки параметров подграфиков в matplotlib.figure.Figure.

Параметры:
targetfigFigure

Экземпляр фигуры, параметры которой нужно настроить.

toolfigFigure

Экземпляр фигуры, в которую будет вставлен инструмент для настройки подграфиков.

классmatplotlib.widgets.TextBox(ax, label, initial='', *, color='.95', hovercolor='1', label_pad=0.01, textalignment='left')[исходный код]

Bases: AxesWidget

Поле ввода текста, не зависящее от графической среды.

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

Вызовите on_text_change для обновления при изменении текста.

Вызовите on_submit для обновления при нажатии Enter или выходе из поля ввода.

Атрибуты:
axAxes

Родительский Axes для виджета.

labelText
colorцвет

Цвет поля ввода текста, когда курсор не находится над ним.

hovercolorцвет

Цвет поля ввода текста, когда курсор находится над ним.

Параметры:
axAxes

Экземпляр Axes, в который будет помещен виджет.

labelstr

Подпись для поля ввода текста.

initialstr

Начальное значение в поле ввода текста.

colorцвет

Цвет поля.

hovercolorцвет

Цвет поля при наведении курсора.

label_padfloat

Расстояние между меткой и правой стороной поля ввода текста.

textalignment{'left', 'center', 'right'}

Горизонтальное выравнивание текста.

begin_typing(x=<deprecated parameter>)[исходный код]
disconnect(cid)[исходный код]

Удаляет наблюдателя с идентификатором соединения cid.

on_submit(func)[исходный код]

При нажатии Enter или выходе из поля ввода вызывается func с событием.

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

on_text_change(func)[исходный код]

При изменении текста вызывается func с событием.

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

set_val(val)[исходный код]
stop_typing()[исходный код]
свойствоtext
END_OF_DOCUMENT_MARKER
классmatplotlib.widgets.ToolHandles(ax, x, y, *, marker='o', marker_props=None, useblit=True)[исходный код]

Bases: object

Управляющие маркеры для инструментов холста.

Параметры:
axAxes

Объект Axes Matplotlib, где отображаются управляющие маркеры.

x, yОдномерные массивы

Координаты управляющих маркеров.

markerстрока, по умолчанию: 'o'

Форма маркера, используемого для отображения маркера. См. matplotlib.pyplot.plot.

marker_propsсловарь, необязательно

Дополнительные свойства маркера. См. matplotlib.lines.Line2D.

useblitбулево значение, по умолчанию: True

Использовать ли кеширование для более быстрой отрисовки (если поддерживается бэкендом). Подробности см. в учебнике Более быстрая отрисовка с помощью кеширования.

свойствоartists
closest(x, y)[исходный код]

Возвращает индекс и расстояние в пикселях до ближайшего индекса.

set_animated(val)[исходный код]
set_data(pts, y=None)[исходный код]

Устанавливает координаты x и y маркеров.

set_visible(val)[исходный код]
свойствоx
свойствоy
classmatplotlib.widgets.ToolLineHandles(ax, positions, direction, *, line_props=None, useblit=True)[исходный код]

Базовые классы: object

Управляющие маркеры для инструментов холста.

Параметры:
axAxes

Оси Matplotlib, где отображаются управляющие маркеры инструментов.

positionsОдномерный массив

Позиции маркеров в координатах данных.

direction{"горизонтально", "вертикально"}

Направление маркеров: 'вертикально' или 'горизонтально'.

line_propsсловарь, необязательно

Дополнительные свойства линии. См. matplotlib.lines.Line2D.

useblitбулево, по умолчанию: True

Использовать ли ускоренное рисование (если поддерживается бэкендом). Подробнее см. в руководстве Ускоренное отображение с помощью blitting.

propertyartists
closest(x, y)[исходный код]

Возвращает индекс и расстояние в пикселях до ближайшего маркера.

Параметры:
x, yfloat

Координаты x и y, относительно которых рассчитывается расстояние для определения ближайшего маркера.

Возвращаемое значение:
индекс, расстояниеиндекс маркера и расстояние от него до

позиции x, y

propertydirection

Направление маркера: 'вертикально' или 'горизонтально'.

propertypositions

Позиции маркера в координатах данных.

remove()[исходный код]

Удаляет элемент маркера из фигуры.

set_animated(value)[исходный код]

Устанавливает состояние анимации маркеров.

set_data(positions)[исходный код]

Устанавливает координаты x или y маркеров в зависимости от того, являются ли линии вертикальными или горизонтальными.

Параметры:
positionsкортеж длины 2

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

set_visible(value)[исходный код]

Устанавливает состояние видимости элементов маркеров.

classmatplotlib.widgets.Widget[исходный код]

Базовые классы: object

Абстрактный базовый класс для GUI-нейтральных виджетов.

propertyactive

Является ли виджет активным?

drawon=True
eventson=True
get_active()[исходный код]

Получить значение, показывающее, является ли виджет активным.

ignore(event)[исходный код]

Возвращает, следует ли игнорировать событие.

Этот метод должен вызываться в начале любого обработчика событий.

set_active(active)[исходный код]

Установить, является ли виджет активным.

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

Spec-Zone.ru

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