matplotlib.widgets
GUI-нейтральные виджеты
Виджеты, предназначенные для работы с любыми графическими интерфейсами. Все эти виджеты требуют предварительного определения экземпляра Axes и передачи его в качестве первого параметра. Matplotlib не пытается быть слишком умным с точки зрения макета — вам придётся выяснить, какой ширины и высоты вы хотите, чтобы были ваши Axes, чтобы разместить ваш виджет.
- classmatplotlib.widgets.AxesWidget(ax)[source]
-
Bases:
WidgetВиджет, связанный с единственным
Axes.Чтобы гарантировать, что виджет остаётся отзывчивым и не удаляется сборщиком мусора, пользователь должен сохранить ссылку на объект.
Это необходимо, так как регистр обратных вызовов сохраняет только слабые ссылки на функции, которые являются методами виджета. Если на объект виджета нет ссылок, он может быть удалён сборщиком мусора, что отсоединит обратные вызовы.
- Атрибуты:
-
-
ax
Axes -
Родительский Axes для виджета.
-
canvas
FigureCanvasBase -
Родительский холст figure для виджета.
-
activebool -
Является ли виджет активным?
-
ax
- connect_event(event, callback)[source]
-
Устанавливает обратный вызов для события.
Это следует использовать вместо
figure.canvas.mpl_connect, так как эта функция хранит идентификаторы обратных вызовов для дальнейшего удаления.
- disconnect_events()[source]
-
Отключает все события, созданные этим виджетом.
- classmatplotlib.widgets.Button(ax, label, image=None, color='0.85', hovercolor='0.95', *, useblit=True)[source]
-
Bases:
AxesWidgetКнопка нейтрального интерфейса пользователя.
Для сохранения отзывчивости кнопки необходимо сохранить ссылку на неё. Вызовите
on_clicked, чтобы подключить обработчик нажатия.- Атрибуты:
- Параметры:
-
-
ax
Axes -
Экземпляр оси (
Axes), на которую будет помещена кнопка. - labelstr
-
Текст кнопки.
- imagearray-like или PIL Image
-
Изображение для отображения на кнопке, если не None. Параметр передается напрямую в
imshow. - colorцвет
-
Цвет кнопки в обычном состоянии.
- hovercolorцвет
-
Цвет кнопки при наведении курсора.
- useblitbool, по умолчанию: True
-
Использовать ускорение отрисовки (blitting), если поддерживается бэкендом. Подробности см. в руководстве Более быстрая отрисовка с помощью blitting.
Введено в версии 3.7.
-
ax
- disconnect(cid)[source]
-
Удаляет обработчик событий с идентификатором cid.
- on_clicked(func)[source]
-
Подключает обработчик событий func для нажатия на кнопку.
Возвращает идентификатор подключения, который может быть использован для отключения обработчика.
- classmatplotlib.widgets.CheckButtons(ax, labels, actives=None, *, useblit=True, label_props=None, frame_props=None, check_props=None)[source]
-
Базы:
AxesWidgetНейтральный для графических интерфейсов набор флажков.
Для того, чтобы флажки оставались реагирующими, вы должны сохранить ссылку на этот объект.
Подключитесь к флажкам с помощью метода
on_clicked.- Атрибуты:
-
-
ax
Axes -
Родительский объект Axes для виджета.
-
labelsсписок
Text -
rectanglesсписокRectangle -
[Устаревшее]
-
linesсписок пар (Line2D,Line2D) -
[Устаревшее]
-
ax
Добавление флажков к экземпляру
Axesax.- Параметры:
-
-
ax
Axes -
Родительский объект Axes для виджета.
- labelsсписок str
-
Метки флажков.
- activesсписок bool, необязательно
-
Начальное состояние флажков. Список должен иметь ту же длину, что и labels. Если не задано, все флажки неактивны.
- useblitbool, по умолчанию: True
-
Использовать кеширование для ускорения отрисовки, если это поддерживается бэкендом. Подробности см. в руководстве Ускорение рендеринга с помощью кеширования.
Новая в версии 3.7.
- label_propsdict, необязательно
-
Словарь свойств
Text, которые необходимо использовать для меток.Новая в версии 3.7.
- frame_propsdict, необязательно
-
Словарь свойств разброса
Collectionдля использования в рамке флажка. По умолчанию (размер шрифта метки / 2)**2 размер, черный edgecolor, без facecolor и 1.0 linewidth.Новая в версии 3.7.
- check_propsdict, необязательно
-
Словарь свойств разброса
Collectionдля использования в флажке. По умолчанию (размер шрифта метки / 2)**2 размер, черный цвет и 1.0 linewidth.Новая в версии 3.7.
-
ax
- disconnect(cid)[source]
-
Удаляет наблюдателя с идентификатором соединения cid.
- get_status()[source]
-
Возвращает список состояний (True/False) всех флажков.
- propertylines[source]
-
[Устаревшее]
Примечания
Устарело начиная с версии 3.7: Любая настройка пользовательских свойств может быть потеряна.
- on_clicked(func)[source]
-
Подключает функцию обратного вызова func к событиям нажатия на кнопки.
Возвращает идентификатор соединения, который может быть использован для отключения обратного вызова.
- propertyrectangles[source]
-
[Устаревшее]
Примечания
Устарело начиная с версии 3.7: Любая настройка пользовательских свойств может быть потеряна.
- set_active(index)[source]
-
Переключает (активирует или деактивирует) флажок по индексу.
Обратные вызовы будут вызваны, если
eventsonравно True.- Параметры:
-
- indexint
-
Индекс флажка, который нужно переключить.
- Исключения:
-
- ValueError
-
Если index недопустим.
- set_check_props(props)[source]
-
Устанавливает свойства флажков.
Новая в версии 3.7.
- Параметры:
-
- propsdict
-
Словарь свойств
Collectionдля использования в флажке.
- set_frame_props(props)[source]
-
Устанавливает свойства рамок флажков.
Новая в версии 3.7.
- Параметры:
-
- propsdict
-
Словарь свойств
Collectionдля использования в рамках флажков.
- classmatplotlib.widgets.Cursor(ax, *, horizOn=True, vertOn=True, useblit=False, **lineprops)[source]
-
Базируется на
AxesWidgetПерекрестие курсора, которое охватывает ось и перемещается вместе с курсором мыши.
Для сохранения чувствительности курсора необходимо сохранить ссылку на него.
- Параметры:
-
-
ax
Axes -
Ось, к которой прикрепить курсор.
- horizOnbool, по умолчанию: True
-
Отображать ли горизонтальную линию.
- vertOnbool, по умолчанию: True
-
Отображать ли вертикальную линию.
- useblitbool, по умолчанию: False
-
Использовать кеширование для более быстрого отображения, если это поддерживается бэкендом. Подробнее см. в руководстве Более быстрое отображение с помощью кеширования.
-
ax
- Другие параметры:
Примеры
См. Cursor.
- clear(event)[source]
-
Внутренний обработчик событий для очистки курсора.
- onmove(event)[source]
-
Внутренний обработчик событий для отображения курсора при перемещении мыши.
- 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)[source]
-
Bases:
RectangleSelectorВыделение эллиптической области на графике Axes.
Для сохранения отзывчивости курсора необходимо сохранить на него ссылку.
События нажатия и отпускания курсора, произошедшие в одних и тех же координатах вне выделения, приведут к очистке выделения, за исключением случаев
ignore_event_outside=True.- Параметры:
-
-
ax
Axes -
Родительские оси виджета.
- onselectфункция
-
Функция обратного вызова, которая вызывается после события отпускания и создания, изменения или удаления выделения. Она должна иметь следующий синтаксис:
def onselect(eclick: MouseEvent, erelease: MouseEvent)
где eclick и erelease — события нажатия и отпускания мыши
MouseEvent, которые запускают и завершают выделение. - minspanxfloat, по умолчанию: 0
-
Выделения с шириной менее или равной minspanx удаляются (если уже существуют) или отменяются.
- minspanyfloat, по умолчанию: 0
-
Выделения с высотой менее или равной minspanx удаляются (если уже существуют) или отменяются.
- useblitbool, по умолчанию: False
-
Использовать ли буферизацию для ускорения отрисовки (если поддерживается бэкендом). Подробнее см. в руководстве Более быстрое отображение с помощью буферизации.
- propsdict, необязательно
-
Свойства, с помощью которых рисуется эллипс. См.
Patchдля допустимых свойств. По умолчанию:dict(facecolor='red', edgecolor='black', alpha=0.2, fill=True) - spancoords{"data", "pixels"}, по умолчанию: "data"
-
Использовать ли minspanx и minspany в координатах данных или пикселей.
-
button
MouseButton, списокMouseButton, по умолчанию: все кнопки -
Кнопки, которые запускают выделение прямоугольника.
- grab_rangefloat, по умолчанию: 10
-
Расстояние в пикселях, в пределах которого могут активироваться управляющие элементы интерактивного инструмента.
- handle_propsdict, необязательно
-
Свойства, с помощью которых рисуются интерактивные элементы управления (маркерные объекты). См. аргументы маркера в
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, квадратная форма селектора определяется в координатах данных, а не в координатах отображения.
-
ax
Примеры
- classmatplotlib.widgets.Lasso(ax, xy, callback, *, useblit=True)[source]
-
Bases:
AxesWidgetКривая выделения произвольной формы.
Выбранный путь можно использовать совместно с
contains_pointдля выделения точек данных на изображении.В отличие от
LassoSelector, этот объект должен быть инициализирован начальной точкой xy, и событияLassoуничтожаются при отпускании.- Parameters:
-
-
ax
Axes -
Родительский объект Axes для виджета.
- xy(float, float)
-
Координаты начала выделения.
- callbackcallable
-
Когда выделение отпускается, вызывается функция callback и передаются вершины выбранного пути.
- useblitbool, default: True
-
Использовать ли блиттинг для более быстрого рисования (если поддерживается бэкендом). Подробнее см. учебник Более быстрое отображение с помощью блиттинга.
-
ax
- onmove(event)[source]
- onrelease(event)[source]
- classmatplotlib.widgets.LassoSelector(ax, onselect, *, useblit=True, props=None, button=None)[source]
-
Bases:
_SelectorWidgetКривая выделения произвольной формы.
Для того, чтобы селектор оставался отзывчивым, необходимо сохранить ссылку на него.
Выбранный путь можно использовать совместно с
contains_pointдля выделения точек данных на изображении.В отличие от
Lasso,LassoSelectorнаписан с интерфейсом, похожим наRectangleSelectorиSpanSelector, и будет взаимодействовать с объектом Axes до отключения.Пример использования:
ax = plt.subplot() ax.plot(x, y) def onselect(verts): print(verts) lasso = LassoSelector(ax, onselect)- Parameters:
-
-
ax
Axes -
Родительский объект Axes для виджета.
- onselectfunction
-
Когда выделение отпускается, вызывается функция onselect и передаются вершины выбранного пути.
- useblitbool, default: True
-
Использовать ли блиттинг для более быстрого рисования (если поддерживается бэкендом). Подробнее см. учебник Более быстрое отображение с помощью блиттинга.
- propsdict, optional
-
Свойства, с помощью которых рисуется линия, см.
Line2Dдля допустимых свойств. Значения по умолчанию определены вmpl.rcParams. -
button
MouseButtonили списокMouseButton, optional -
Кнопки мыши, используемые для прямоугольного выделения. По умолчанию
None, что соответствует всем кнопкам.
-
ax
- classmatplotlib.widgets.LockDraw[source]
-
Bases:
objectНекоторые виджеты, например, курсор, рисуют на канвасе, и это нежелательно во всех случаях, например, когда панель инструментов находится в режиме масштабирования по прямоугольнику и рисует прямоугольник. Чтобы избежать этого, виджет может получить блокировку канваса с помощью
canvas.widgetlock(widget)перед рисованием на канвасе; это предотвратит рисование других виджетов в то же время (если они также попытаются получить блокировку в первую очередь).- available(o)[source]
-
Возвращает, доступно ли рисование для o.
- isowner(o)[source]
-
Возвращает, является ли o владельцем этой блокировки.
- locked()[source]
-
Возвращает, заблокирована ли блокировка в данный момент владельцем.
- release(o)[source]
-
Освободить блокировку от o.
- classmatplotlib.widgets.MultiCursor(canvas, axes, *, useblit=True, horizOn=False, vertOn=True, **lineprops)[source]
-
Bases:
WidgetПредоставляет вертикальный (по умолчанию) и/или горизонтальный курсор, общий для нескольких осей.
Для сохранения отзывчивости курсора необходимо сохранить на него ссылку.
- Параметры:
-
- canvasобъект
-
Этот параметр полностью не используется и сохраняется только для обратной совместимости.
-
axesсписок
Axes -
Оси
Axesдля привязки курсора. - useblitбулево значение, по умолчанию: True
-
Использовать кеширование для ускорения отрисовки, если оно поддерживается бэкэндом. Подробнее об этом см. в руководстве Ускорение отрисовки с помощью кеширования.
- horizOnбулево значение, по умолчанию: False
-
Отрисовывать ли горизонтальную линию.
- vertOnбулево значение, по умолчанию: True
-
Отрисовывать ли вертикальную линию.
- Другие параметры:
Примеры
См. Multicursor.
- clear(event)[source]
-
Очистить курсор.
- connect()[source]
-
Подключить события.
- disconnect()[source]
-
Отключить события.
- needclear()[source]
-
[Устарело]
Примечания
Устарело начиная с версии 3.7:
- onmove(event)[source]
- 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)[source]
-
Bases:
_SelectorWidgetВыберите область многоугольника на оси.
Укажите вершины щелчками мыши, а затем завершите выбор, щелкнув по первой вершине. После построения отдельные вершины можно перемещать, нажав и перетаскивая левой кнопкой мыши, или удалять, нажав правой кнопкой мыши.
Кроме того, можно использовать следующие модификаторы клавиш:
- Удерживая клавишу ctrl, нажмите и перетащите вершину, чтобы переместить её до завершения многоугольника.
- Удерживая клавишу shift, нажмите и перетащите в любом месте на оси, чтобы переместить все вершины.
- Нажмите клавишу esc, чтобы начать новый многоугольник.
Чтобы селектор оставался отзывчивым, необходимо сохранить ссылку на него.
- Параметры:
-
-
ax
Axes -
Родительская ось виджета.
- onselectфункция
-
При завершении или изменении многоугольника после завершения вызывается функция onselect и передаётся список вершин в виде
(xdata, ydata)кортежей. - useblitbool, по умолчанию: False
-
Использовать ли кеширование для более быстрого отрисовки (если это поддерживается бэкэндом). Подробнее см. в учебнике Ускорение отрисовки с помощью кеширования.
- propsdict, необязательно
-
Свойства, с которыми рисуется линия, см.
Line2Dдля допустимых свойств. По умолчанию:dict(color='k', linestyle='-', linewidth=2, alpha=0.5)
- handle_propsdict, необязательно
-
Свойства художника для маркеров, нарисованных в вершинах многоугольника. См. аргументы маркера в
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.
-
ax
Примечания
Если после удаления точек остаётся только одна точка, селектор возвращается в состояние незаконченного и вы можете начать рисовать новый многоугольник с уже существующей точки.
Примеры
Селектор многоугольника Выбор индексов из коллекции с помощью селектора многоугольника
- onmove(event)[source]
-
Обработчик и валидатор событий перемещения курсора.
- propertyverts
-
Вершины многоугольника в виде списка
(x, y)пар.
- classmatplotlib.widgets.RadioButtons(ax, labels, active=0, activecolor=None, *, useblit=True, label_props=None, radio_props=None)[source]
-
Bases:
AxesWidgetРадиокнопка, независимая от графической оболочки.
Для сохранения отзывчивости кнопок необходимо сохранить ссылку на этот объект.
Подключитесь к RadioButtons с помощью метода
on_clicked.- Атрибуты:
-
-
ax
Axes -
Родительский Axes для виджета.
- activecolorцвет
-
Цвет выбранной кнопки.
-
labelsсписок
Text -
Подписи кнопок.
-
circlesсписокCircle -
[Устарело]
- value_selectedстрока
-
Текст подписи выбранной кнопки.
-
ax
Добавление радиокнопок в
Axes.- Параметры:
-
-
ax
Axes -
Axes, в который будут добавлены кнопки.
- labelsсписок строк
-
Подписи кнопок.
- activeцелое число
-
Индекс первоначально выбранной кнопки.
- activecolorцвет
-
Цвет выбранной кнопки. По умолчанию
'blue', если не указано здесь или в radio_props. - useblitbool, по умолчанию: True
-
Использовать blitting для более быстрого отрисовки, если это поддерживается бэкэндом. Подробнее см. в руководстве Более быстрое рендеринг с помощью blitting.
Новая функция в версии 3.7.
- label_propsсловарь или список словарей, необязательно
-
Словарь свойств
Textдля подписей.Новая функция в версии 3.7.
- radio_propsсловарь, необязательно
-
Словарь свойств
Collectionдля радиокнопок. По умолчанию (размер шрифта метки / 2)**2 размер, черный контур и activecolor цвет заливки (при активном состоянии).Примечание
Если в radio_props задан цвет заливки, он переопределит activecolor. Это может использоваться для предоставления цвета активного состояния каждой кнопки.
Новая функция в версии 3.7.
-
ax
- свойствоactivecolor
- свойствоcircles[source]
-
[Устарело]
Примечания
Устарело начиная с версии 3.7: Любые пользовательские стили свойств могут быть потеряны.
- disconnect(cid)[source]
-
Удалить наблюдателя с идентификатором соединения cid.
- on_clicked(func)[source]
-
Подключить функцию обратного вызова func к событиям нажатия на кнопки.
Возвращает идентификатор соединения, который может быть использован для отключения обратного вызова.
- set_active(index)[source]
-
Выбрать кнопку с номером index.
Обратные вызовы будут сработаны, если
eventsonравно True.
- set_label_props(props)[source]
-
Установить свойства меток
Text.Новая функция в версии 3.7.
- Параметры:
-
- propsсловарь
-
Словарь свойств
Textдля меток.
- set_radio_props(props)[source]
-
Установить свойства
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)[source]
-
Bases:
SliderBaseПолзунок, представляющий диапазон значений с плавающей точкой. Определяет минимальное и максимальное значения диапазона через атрибут val как кортеж (мин, макс).
Создаёт ползунок, определяющий диапазон, заключённый в [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
Размер ручек ползунка в пунктах.
Другие значения будут преобразованы как маркер{foo} и переданы конструктору
Line2D. Например,handle_style = {'style'='x'}приведет кmarkerstyle = 'x'.
Примечания
Дополнительные параметры kwargs передаются в
self.poly, который являетсяPolygon, рисующим узел ползунка. См. документациюPolygonдля допустимых имен свойств (facecolor,edgecolor,alpha, и т.д.).- on_changed(func)[source]
-
Подключить func как функцию обратного вызова к изменениям значения ползунка.
- Параметры:
-
- funcвызываемый объект
-
Функция, которая вызывается при изменении ползунка. Функция должна принимать 2-кортеж чисел с плавающей точкой в качестве аргумента.
- Возвращает:
-
- целое число
-
Идентификатор соединения (который может быть использован для отключения func).
- set_max(max)[source]
-
Установить нижнее значение ползунка на max.
- Параметры:
-
- maxfloat
- set_min(min)[source]
-
Установить нижнее значение ползунка на min.
- Параметры:
-
- minfloat
- set_val(val)[source]
-
Установить значение ползунка на 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)[source]
-
Bases:
_SelectorWidgetВыделяет прямоугольную область на оси.
Для сохранения отзывчивости курсора необходимо сохранить ссылку на него.
События нажатия и отпуска, сгенерированные в одних и тех же координатах вне выделения, приведут к очистке селектора, за исключением случая
ignore_event_outside=True.- Параметры:
-
-
ax
Axes -
Родительская ось виджета.
- onselectфункция
-
Обратный вызов, который вызывается после события отпуска и создания выделения, изменения или удаления выделения. Он должен иметь сигнатуру:
def onselect(eclick: MouseEvent, erelease: MouseEvent)
где eclick и erelease — события нажатия и отпуска мыши
MouseEvent, которые начинаются и завершают выделение. - minspanxfloat, по умолчанию: 0
-
Выделения с шириной менее или равной minspanx удаляются (если они уже существуют) или отменяются.
- minspanyfloat, по умолчанию: 0
-
Выделения с высотой менее или равной minspanx удаляются (если они уже существуют) или отменяются.
- useblitbool, по умолчанию: False
-
Использовать ли блиттинг для более быстрого рисования (если поддерживается бэкендом). Подробнее см. в руководстве Более быстрое отображение с использованием блиттинга.
- propsdict, необязательно
-
Свойства, с помощью которых рисуется прямоугольник. См.
Patchдля допустимых свойств. По умолчанию:dict(facecolor='red', edgecolor='black', alpha=0.2, fill=True) - spancoords{"data", "pixels"}, по умолчанию: "data"
-
Указывает, интерпретировать ли minspanx и minspany в координатах данных или пикселей.
-
button
MouseButton, списокMouseButton, по умолчанию: все кнопки -
Кнопка(ы), которые вызывают выделение прямоугольника.
- grab_rangefloat, по умолчанию: 10
-
Расстояние в пикселях, в пределах которого могут быть активированы управляющие элементы интерактивного инструмента.
- handle_propsdict, необязательно
-
Свойства, с помощью которых рисуются интерактивные маркеры. См. аргументы маркеров в
Line2Dдля допустимых свойств. Значения по умолчанию определены вmpl.rcParamsза исключением значения по умолчанию дляmarkeredgecolor, которое будет таким же, как свойствоedgecolorв props. - interactivebool, по умолчанию: False
-
Рисовать ли набор маркеров, которые позволяют взаимодействовать с виджетом после его отрисовки.
- state_modifier_keysdict, необязательно
-
Модификаторы клавиатуры, которые влияют на поведение виджета. Значения дополняют значения по умолчанию:
- "move": Перемещение существующей фигуры, по умолчанию: без модификатора.
- "clear": Очистить текущую фигуру, по умолчанию: "esc".
- "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, форма "square" селектора определяется в координатах данных, а не отображения.
-
ax
Примеры
>>> 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)[source]
-
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
-
Если float, ползунок будет привязываться к кратным значениям valstep. Если массив, ползунок будет привязываться к значениям в массиве.
- orientation{'horizontal', 'vertical'}, по умолчанию: 'horizontal'
-
Ориентация ползунка.
- initcolorцвет, по умолчанию: 'r'
-
Цвет линии в позиции valinit. Установите в
'none'для отсутствия линии. - 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)[source]
-
Подключить func в качестве обратного вызова к изменениям значения ползунка.
- Параметры:
-
- funcвызываемая функция
-
Функция, вызываемая при изменении положения ползунка. Функция должна принимать единственное число с плавающей точкой в качестве аргумента.
- Возвращает:
-
- int
-
Идентификатор подключения (который можно использовать для отключения func).
- set_val(val)[source]
-
Установить значение ползунка на val.
- Параметры:
-
- valfloat
- classmatplotlib.widgets.SliderBase(ax, orientation, closedmin, closedmax, valmin, valmax, valfmt, dragging, valstep)[source]
-
Bases:
AxesWidgetБазовый класс для создания виджетов ползунков. Не предназначен для прямого использования.
Для сохранения отзывчивости ползунка необходимо сохранить ссылку на него.
- disconnect(cid)[source]
-
Удалить наблюдателя с идентификатором соединения cid.
- Параметры:
-
- cidint
-
Идентификатор соединения наблюдателя, который необходимо удалить.
- reset()[source]
-
Сбросить ползунок до начального значения.
- 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)[source]
-
Bases:
_SelectorWidgetВизуально выбирает диапазон мин/макс на одной оси и вызывает функцию с этими значениями.
Для обеспечения отзывчивости селектора, сохраняйте ссылку на него.
Для отключения SpanSelector, установите
span_selector.activeв False. Чтобы включить его снова, установите в True.События нажатия и отпускания, сгенерированные в одних и тех же координатах вне выделения, очистят селектор, за исключением случаев, когда
ignore_event_outside=True.- Параметры:
-
-
ax
Axes -
onselectcallable с сигнатурой
func(min: float, max: float) -
Функция обратного вызова, которая вызывается после события отпускания и создания, изменения или удаления выделения.
- direction{"horizontal", "vertical"}
-
Направление, по которому рисуется селектор.
- minspanfloat, по умолчанию: 0
-
Если выделение меньше или равно minspan, выделение удаляется (если уже существует) или отменяется.
- useblitbool, по умолчанию: False
-
Если True, используйте функции блиттинга, зависящие от бэкэнда, для более быстрого обновления холста. См. учебное пособие Более быстрое отображение с помощью блиттинга для получения дополнительной информации.
- propsdict, по умолчанию: {'facecolor': 'red', 'alpha': 0.5}
-
Словарь свойств
Patch. -
onmove_callbackcallable с сигнатурой
func(min: float, max: float), необязательно -
Вызывается при перемещении мыши во время выбора диапазона.
- interactivebool, по умолчанию: False
-
Определяет, нужно ли рисовать набор рукояток для взаимодействия с виджетом после его отрисовки.
-
button
MouseButtonили списокMouseButton, по умолчанию: все кнопки -
Кнопки мыши, которые активируют селектор.
- handle_propsdict, по умолчанию: None
-
Свойства линий рукояток по краям диапазона. Используются только когда interactive - True. Смотрите
Line2Dдля допустимых свойств. - grab_rangefloat, по умолчанию: 10
-
Расстояние в пикселях, в пределах которого можно активировать ручки интерактивного инструмента.
- state_modifier_keysdict, необязательно
-
Модификаторы клавиатуры, которые влияют на поведение виджета. Значения изменяют значения по умолчанию:
- "clear": Очистить текущую форму, значение по умолчанию: "escape".
- drag_from_anywherebool, по умолчанию: False
-
Если
True, виджет можно перемещать, нажав в любом месте внутри его границ. - ignore_event_outsidebool, по умолчанию: False
-
Если
True, событие, сгенерированное за пределами селектора, будет проигнорировано. - snap_values1D массив-подобный, необязательно
-
Привязать края селектора к заданным значениям.
-
ax
Примеры
>>> 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()[source]
-
Подключить основные события холста к методам.
- propertydirection
-
Направление селектора: 'vertical' или 'horizontal'.
- propertyextents
-
- (float, float)
-
Значения, в координатах данных, для начальной и конечной точек текущего выделения. Если выделения нет, то начальное и конечное значения будут одинаковыми.
- new_axes(ax, *, _props=None)[source]
-
Установить SpanSelector для работы с новой осью.
- classmatplotlib.widgets.SubplotTool(targetfig, toolfig)[source]
-
Bases:
WidgetИнструмент для изменения параметров подграфика в
Figure.- Параметры:
-
-
targetfig
Figure -
Объект фигуры, параметры которой нужно изменить.
-
toolfig
Figure -
Объект фигуры, в которую нужно встроить инструмент для настройки подграфиков.
-
targetfig
- classmatplotlib.widgets.TextBox(ax, label, initial='', *, color='.95', hovercolor='1', label_pad=0.01, textalignment='left')[source]
-
Bases:
AxesWidgetПоле ввода текста, не зависящее от графической среды.
Для обеспечения отзывчивости поля ввода необходимо сохранить ссылку на него.
Вызовите
on_text_changeдля обновления при изменении текста.Вызовите
on_submitдля обновления при нажатии Enter или выходе из поля ввода.- Атрибуты:
-
-
ax
Axes -
Родительский объект Axes для виджета.
-
label
Text - colorцвет
-
Цвет поля ввода, когда оно не выделено.
- hovercolorцвет
-
Цвет поля ввода при наведении курсора.
-
ax
- Параметры:
-
-
ax
Axes -
Объект
Axes, в который будет помещено поле ввода. - labelstr
-
Метка для этого поля ввода.
- initialstr
-
Начальное значение в поле ввода.
- colorцвет
-
Цвет поля.
- hovercolorцвет
-
Цвет поля при наведении курсора.
- label_padfloat
-
Расстояние между меткой и правой стороной поля ввода.
- textalignment{'left', 'center', 'right'}
-
Горизонтальное расположение текста.
-
ax
- begin_typing(x=<deprecated parameter>)[source]
- disconnect(cid)[source]
-
Удаляет наблюдателя с идентификатором соединения cid.
- on_submit(func)[source]
-
При нажатии Enter или выходе из поля ввода вызывается func с событием.
Возвращает идентификатор соединения, который можно использовать для отключения.
- on_text_change(func)[source]
-
При изменении текста вызывается func с событием.
Возвращает идентификатор соединения, который можно использовать для отключения.
- set_val(val)[source]
- stop_typing()[source]
- propertytext
- classmatplotlib.widgets.ToolHandles(ax, x, y, *, marker='o', marker_props=None, useblit=True)[source]
-
Bases:
objectУправляющие маркеры для инструментов холста.
- Параметры:
-
-
ax
Axes -
Ось Matplotlib, на которой отображаются управляющие маркеры инструментов.
- x, yОдномерные массивы
-
Координаты управляющих маркеров.
- markerстрока, по умолчанию: 'o'
-
Форма маркера, используемого для отображения маркера. См.
plot. - marker_propsсловарь, необязательно
-
Дополнительные свойства маркера. См.
Line2D. - useblitлогическое значение, по умолчанию: True
-
Использовать ли блиттинг для более быстрого отрисовки (если поддерживается бэкендом). Подробности см. в учебнике Более быстрое отображение с помощью блиттинга.
-
ax
- свойствоartists
- closest(x, y)[source]
-
Возвращает индекс и пиксельное расстояние до ближайшего индекса.
- set_animated(val)[source]
- set_data(pts, y=None)[source]
-
Установить координаты x и y маркеров.
- set_visible(val)[source]
- свойствоx
- свойствоy
- classmatplotlib.widgets.ToolLineHandles(ax, positions, direction, *, line_props=None, useblit=True)[source]
-
Bases:
objectУправляющие маркеры для инструментов холста.
- Параметры:
-
-
ax
Axes -
Объект Matplotlib Axes, где отображаются управляющие маркеры инструментов.
- positionsОдномерный массив
-
Позиции маркеров в координатах данных.
- direction{"горизонтально", "вертикально"}
-
Направление маркеров, либо 'вертикально', либо 'горизонтально'
- line_propsсловарь, необязательно
-
Дополнительные свойства линии. См.
Line2D. - useblitбулево значение, по умолчанию: True
-
Использовать ли ускоренный вывод (blitting), если поддерживается бэкэндом. Подробности см. в руководстве Ускорение рендеринга с помощью blitting.
-
ax
- propertyartists
- closest(x, y)[source]
-
Возвращает индекс и пиксельное расстояние до ближайшего маркера.
- Параметры:
-
- x, yчисло с плавающей точкой
-
Позиция x, y, для которой будет вычислено расстояние до ближайшего маркера.
- Возвращает:
-
- индекс, расстояниеиндекс маркера и его расстояние от
-
позиции x, y.
- propertydirection
-
Направление маркера: 'вертикально' или 'горизонтально'.
- propertypositions
-
Позиции маркера в координатах данных.
- remove()[source]
-
Удалить маркеры-элементы из фигуры.
- set_animated(value)[source]
-
Установить состояние анимации маркеров.
- set_data(positions)[source]
-
Установить x- или y-позиции маркеров, в зависимости от того, вертикальные или горизонтальные линии.
- Параметры:
-
- positionsкортеж длины 2
-
Установить позиции маркера в координатах данных
- set_visible(value)[source]
-
Установить видимость маркеров.
- classmatplotlib.widgets.Widget[source]
-
Bases:
objectАбстрактный базовый класс для элементов пользовательского интерфейса (widgets) без привязки к конкретной GUI.
- propertyactive
-
Является ли элемент активным?
- drawon=True
- eventson=True
- get_active()[source]
-
Получить значение активности элемента.
- ignore(event)[source]
-
Вернуть значение, должно ли event быть проигнорировано.
Этот метод должен вызываться в начале любого обработчика событий.
- set_active(active)[source]
-
Установить значение активности элемента.
© 2012–2023 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.8.4/api/widgets_api.html