matplotlib.widgets
Виджеты, независимые от GUI
Виджеты, разработанные для работы с любыми графическими интерфейсами. Все эти виджеты требуют предварительного определения экземпляра matplotlib.axes.Axes и передачи его в качестве первого параметра. Matplotlib не пытается быть слишком умным в отношении макета — вам придется определить желаемую ширину и высоту вашего Axes для размещения виджета.
- classmatplotlib.widgets.AxesWidget(ax)[source]
-
Bases:
WidgetВиджет, связанный с одним
Axes.Для обеспечения реагирования и предотвращения сборки мусора виджета, пользователь должен сохранить ссылку на объект.
Это необходимо, так как реестр обратных вызовов хранит только слабые ссылки на функции, которые являются методами виджета. Если нет ссылок на объект виджета, он может быть собран сборщиком мусора, что приведет к разрыву обратных вызовов.
- Атрибуты:
-
-
ax
Axes -
Родительский Axes для виджета.
-
canvas
FigureCanvasBase -
Родительский холст фигуры для виджета.
-
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
-
Объект
matplotlib.axes.Axes, в который отрисовывается кнопка. - label
-
Экземпляр
matplotlib.text.Text. - color
-
Цвет кнопки при отсутствии наведения.
- hovercolor
-
Цвет кнопки при наведении.
- Параметры:
-
-
ax
Axes -
Объект
Axes, в который будет размещена кнопка. - labelstr
-
Текст кнопки.
- imagearray-like или PIL Image
-
Изображение для размещения в кнопке, если не None. Параметр передаётся напрямую в
imshow. - colorцвет
-
Цвет кнопки при отсутствии активации.
- hovercolorцвет
-
Цвет кнопки при наведении курсора.
- useblitbool, по умолчанию: True
-
Использовать кеширование (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
Добавьте флажки в экземпляр
matplotlib.axes.Axesax.- Параметры:
-
-
ax
Axes -
Родительский 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.
-
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.
- Параметры:
-
- propsсловарь
-
Словарь свойств
Collectionдля отметки флажка.
- set_frame_props(props)[source]
-
Устанавливает свойства рамок флажка.
Новое в версии 3.7.
- Параметры:
-
- propsсловарь
-
Словарь свойств
Collectionдля рамок флажка.
- classmatplotlib.widgets.Cursor(ax, *, horizOn=True, vertOn=True, useblit=False, **lineprops)[source]
-
Базовый класс:
AxesWidgetПерекрестие-курсор, который охватывает область Axes и перемещается с курсором мыши.
Для сохранения отзывчивости курсора необходимо сохранить на него ссылку.
- Параметры:
-
-
ax
Axes -
Объект
Axesдля прикрепления курсора. - horizOnbool, по умолчанию: True
-
Отображать ли горизонтальную линию.
- vertOnbool, по умолчанию: True
-
Отображать ли вертикальную линию.
- useblitbool, по умолчанию: False
-
Использовать буферизацию для более быстрого отображения, если это поддерживается графическим интерфейсом. См. руководство Более быстрое отображение с помощью буферизации для получения подробностей.
-
ax
- Другие параметры:
Примеры
См. Курсор.
- 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Выбрать эллиптическую область осей.
Чтобы курсор оставался отзывчивым, необходимо сохранить ссылку на него.
События нажатия и отпуска мыши, сгенерированные в одних и тех же координатах вне выделения, приведут к удалению выделения, за исключением случаев, когда
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, необязательно
-
Свойства, с помощью которых отрисовывается эллипс. Допустимые свойства см. в
matplotlib.patches.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, необязательно
-
Свойства, с помощью которых отрисовываются интерактивные элементы управления (маркеры). Допустимые свойства см. в аргументах маркеров в
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, форма "квадрат" селектора определена в координатах данных, а не в координатах отображения.
-
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
-
Когда lasso отпускается, вызывается функция callback и передаются вершины выбранного пути.
- useblitbool, default: True
-
Использовать ли ускорение рисования с помощью blitting (если поддерживается бэкэндом). Подробности см. в руководстве Ускоренное отображение с помощью blitting.
-
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
-
Когда lasso отпускается, вызывается функция onselect и передаются вершины выбранного пути.
- useblitbool, default: True
-
Использовать ли ускорение рисования с помощью blitting (если поддерживается бэкэндом). Подробности см. в руководстве Ускоренное отображение с помощью blitting.
- propsdict, optional
-
Свойства, с которыми рисуется линия, см.
matplotlib.lines.Line2Dдля допустимых свойств. Значения по умолчанию определены вmpl.rcParams. -
button
MouseButtonor list ofMouseButton, 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Обеспечивает вертикальный (по умолчанию) и/или горизонтальный курсор, общий для нескольких областей Axes.
Для сохранения отзывчивости курсора необходимо сохранить ссылку на него.
- Parameters:
-
- canvasobject
-
Этот параметр полностью не используется и сохранён только для обратной совместимости.
-
axesсписок
matplotlib.axes.Axes -
Axes, к которым нужно прикрепить курсор. - useblitbool, по умолчанию: True
-
Использовать blitting для более быстрого отрисовки, если это поддерживается бэкэндом. Подробнее см. учебник Более быстрое рендеринг с помощью blitting.
- horizOnbool, по умолчанию: False
-
Рисовать ли горизонтальную линию.
- vertOnbool, по умолчанию: True
-
Рисовать ли вертикальную линию.
- Other Parameters:
Примеры
См. Мультикурсор.
- background()[source]
-
[Устарело]
Замечания
Устарело начиная с версии 3.6:
- propertycanvas[source]
-
[Устарело]
Замечания
Устарело начиная с версии 3.6:
- 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, необязательно
-
Свойства, с которыми рисуется линия, см.
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для получения дополнительной информации.
-
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Радиокнопка, не зависящая от GUI.
Для того, чтобы кнопки оставались отзывчивыми, необходимо сохранить ссылку на этот объект.
Подключитесь к 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
-
Использовать блиттинг для более быстрого рисования, если это поддерживается бэкендом. Подробнее см. учебник Более быстрое отрисовка с помощью блиттинга.
Добавлена в версии 3.7.
- label_propsсловарь или список словарей, необязательно
-
Словарь свойств
Text, которые будут использоваться для меток.Добавлена в версии 3.7.
- radio_propsсловарь, необязательно
-
Словарь свойств
Collectionразброса, которые будут использоваться для радиокнопок. По умолчанию размер (размер шрифта метки / 2)**2, черный edgecolor, и activecolor facecolor (при активации).Примечание
Если в radio_props указан facecolor, он переопределит activecolor. Это может быть использовано для задания активного цвета для каждой кнопки.
Добавлена в версии 3.7.
-
ax
- propertyactivecolor
- propertycircles[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 в виде кортежа (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)[source]
-
Подключает func в качестве функции обратного вызова к изменениям значения ползунка.
- Параметры:
-
- funccallable
-
Функция, которая будет вызываться при изменении ползунка. Функция должна принимать кортеж из двух значений с плавающей точкой в качестве аргумента.
- Возвращает:
-
- int
-
Идентификатор соединения (который может быть использован для отключения 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]
-
Основывается на
_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, необязательно
-
Свойства, с помощью которых рисуется прямоугольник. См.
matplotlib.patches.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, необязательно
-
Свойства, с помощью которых рисуются интерактивные маркеры (маркеры объектов). См. аргументы маркеров в
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, форма "квадрат" селектора определяется в координатах данных, а не в координатах отображения.
-
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
-
Если число, ползунок будет устанавливаться на кратные 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)[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.
- Parameters:
-
- 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Визуально выбирает диапазон min/max на одной оси и вызывает функцию с этими значениями.
Для обеспечения отзывчивости селектора необходимо сохранить ссылку на него.
Для отключения SpanSelector, установите
span_selector.activeв False. Чтобы включить его обратно, установите в True.События нажатия и отпускания, сгенерированные в одних и тех же координатах вне выбора, очистят селектор, за исключением случаев, когда
ignore_event_outside=True.- Parameters:
-
-
ax
Axes - onselectcallable
-
Функция обратного вызова, которая вызывается после события отпускания и создания, изменения или удаления выбора. Она должна иметь следующий сигнатуру:
def on_select(min: float, max: float) -> Any
- direction{"horizontal", "vertical"}
-
Направление, по которому рисуется селектор.
- minspanfloat, default: 0
-
Если выбор меньше или равен minspan, выбор удаляется (если уже существует) или отменяется.
- useblitbool, default: False
-
Если True, использовать функции кэширования, зависящие от бэкенда, для ускорения обновлений холста. См. учебник Более быстрое отображение с помощью кэширования для получения подробностей.
- propsdict, optional
-
Словарь свойств
matplotlib.patches.Patch. По умолчанию:dict(facecolor='red', alpha=0.5) - onmove_callbackfunc(min, max), min/max are floats, default: None
-
Вызывается при перемещении мыши во время выбора диапазона.
- span_staysbool, default: False
-
Если True, диапазон остается видимым после отпускания мыши. Устарело, используйте interactive вместо него.
- interactivebool, default: False
-
Определяет, нужно ли рисовать набор ручек для взаимодействия с виджетом после его отрисовки.
-
button
MouseButtonили списокMouseButton, по умолчанию: все кнопки -
Кнопки мыши, активирующие селектор.
- handle_propsdict, default: None
-
Свойства линий ручек на краях диапазона. Используются только при interactive = True. См.
matplotlib.lines.Line2Dдля допустимых свойств. - grab_rangefloat, default: 10
-
Расстояние в пикселях, в пределах которого можно активировать интерактивные инструменты.
- state_modifier_keysdict, optional
-
Модификаторы клавиш, которые влияют на поведение виджета. Значения дополняют значения по умолчанию:
- "clear": Очистить текущую форму, по умолчанию: "escape".
- drag_from_anywherebool, default: False
-
Если
True, виджет можно переместить, нажав в любой точке внутри его границ. - ignore_event_outsidebool, default: False
-
Если
True, событие, сгенерированное за пределами селектора, игнорируется. - snap_values1D array-like, optional
-
Привязывает края селектора к заданным значениям.
-
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
-
Возвращает границы селектора.
- new_axes(ax)[source]
-
Устанавливает SpanSelector для работы с новой осью.
- classmatplotlib.widgets.SubplotTool(targetfig, toolfig)[source]
-
Bases:
WidgetИнструмент для настройки параметров subplot в
matplotlib.figure.Figure.- Параметры:
-
-
targetfig
Figure -
Экземпляр фигуры, параметры которой нужно настроить.
-
toolfig
Figure -
Экземпляр фигуры, в которую будет вставлен инструмент для настройки subplot.
-
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 Axes, где отображаются управляющие маркеры.
- x, yОдномерные массивы
-
Координаты управляющих маркеров.
- markerстрока, по умолчанию: 'o'
-
Форма маркера, используемого для отображения маркера. См.
matplotlib.pyplot.plot. - marker_propsсловарь, необязательно
-
Дополнительные свойства маркера. См.
matplotlib.lines.Line2D. - useblitбулево значение, по умолчанию: True
-
Использовать ли кеширование для более быстрого отрисовки (если поддерживается бэкэндом). Подробности см. в учебнике Более быстрое рендеринг с помощью кеширования.
-
ax
- propertyartists
- closest(x, y)[source]
-
Возвращает индекс и пиксельное расстояние до ближайшего индекса.
- set_animated(val)[source]
- set_data(pts, y=None)[source]
-
Устанавливает координаты x и y маркеров.
- set_visible(val)[source]
- propertyx
- propertyy
- classmatplotlib.widgets.ToolLineHandles(ax, positions, direction, *, line_props=None, useblit=True)[source]
-
Bases:
objectУправляющие маркеры для инструментов холста.
- Параметры:
-
-
ax
Axes -
Matplotlib Оси, где отображаются управляющие маркеры инструментов.
- positionsОдномерный массив
-
Позиции маркеров в координатах данных.
- direction{"горизонтально", "вертикально"}
-
Направление маркеров, либо 'вертикально', либо 'горизонтально'
- line_propsсловарь, необязательно
-
Дополнительные свойства линии. См.
matplotlib.lines.Line2D. - useblitбулево, по умолчанию: True
-
Использовать ли ускоренное рисование (если поддерживается бэкендом). Подробнее см. в руководстве Ускоренное отображение с помощью blitting.
-
ax
- propertyartists
- closest(x, y)[source]
-
Возвращает индекс и пиксельное расстояние до ближайшего маркера.
- Параметры:
-
- x, yfloat
-
Позиция 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Абстрактный базовый класс для GUI-нейтральных виджетов.
- propertyactive
-
Является ли виджет активным?
- drawon=True
- eventson=True
- get_active()[source]
-
Получить, является ли виджет активным.
- ignore(event)[source]
-
Возвращает, следует ли игнорировать событие.
Этот метод должен вызываться в начале любого обработчика событий.
- set_active(active)[source]
-
Установить, является ли виджет активным.
© 2012–2023 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.7.5/api/widgets_api.html