matplotlib.widgets
GUI-нейтральные виджеты
Виджеты, предназначенные для работы с любыми графическими интерфейсами (GUI). Все эти виджеты требуют предварительного определения экземпляра matplotlib.axes.Axes и передачи его в качестве первого параметра. Matplotlib не пытается быть слишком умным в отношении макета — вам нужно будет определить желаемую ширину и высоту вашего элемента Axes для размещения вашего виджета.
- classmatplotlib.widgets.AxesWidget(ax)[source]
-
Базовое классы:
WidgetВиджет, связанный с одним
Axes.Для обеспечения того, чтобы виджет оставался реагирующим и не был удалён сборщиком мусора, пользователь должен сохранить ссылку на объект.
Это необходимо, потому что регистр обратных вызовов сохраняет только слабые ссылки на функции, которые являются методами виджета. Если нет ссылок на объект виджета, он может быть удален сборщиком мусора, что отсоединит обратные вызовы.
- Атрибуты:
-
-
ax
Axes -
Родительский элемент Axes для виджета.
-
canvas
FigureCanvasBase -
Родительский холст (canvas) фигуры для виджета.
-
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')[source]
-
Базовое классы:
AxesWidgetНейтральная для графического интерфейса кнопка.
Для сохранения отзывчивости кнопки необходимо сохранить ссылку на неё. Используйте
on_clickedдля подключения к кнопке.- Атрибуты:
-
- ax
-
matplotlib.axes.Axes, в который отображается кнопка. - label
-
Экземпляр
matplotlib.text.Text. - color
-
Цвет кнопки при отсутствии наведения курсора.
- hovercolor
-
Цвет кнопки при наведении курсора.
- Параметры:
- disconnect(cid)[source]
-
Удаление функции обратного вызова с идентификатором соединения cid.
- on_clicked(func)[source]
-
Подключение функции обратного вызова func к событиям нажатия кнопки.
Возвращает идентификатор соединения, который можно использовать для отключения обратного вызова.
- classmatplotlib.widgets.CheckButtons(ax, labels, actives=None)[source]
-
Bases:
AxesWidgetНабор флажков с нейтральным интерфейсом.
Для того, чтобы флажки оставались отзывчивыми, необходимо сохранить ссылку на этот объект.
Подключитесь к CheckButtons с помощью метода
on_clicked.- Атрибуты:
-
-
ax
Axes -
Родительский объект Axes для виджета.
-
labelsсписок
Text -
rectanglesсписок
Rectangle -
linesсписок пар (
Line2D,Line2D) -
Список линий для крестиков в чекбоксах. Эти линии существуют для каждой рамки, но
set_visible(False)при невыбранном чекбоксе.
-
ax
Добавить флажки к экземпляру
matplotlib.axes.Axesax.- Параметры:
-
-
ax
Axes -
Родительский объект Axes для виджета.
- labelsсписок str
-
Метки чекбоксов.
- activesсписок bool, необязательно
-
Начальное состояние чекбоксов. Список должен иметь такую же длину, как и labels. Если не указано, все чекбоксы будут неактивны.
-
ax
- disconnect(cid)[source]
-
Удалить наблюдателя с идентификатором соединения cid.
- get_status()[source]
-
Возвращает кортеж состояний (True/False) всех чекбоксов.
- on_clicked(func)[source]
-
Подключить функцию обратного вызова func к событиям нажатия на кнопку.
Возвращает идентификатор соединения, который можно использовать для отключения обратного вызова.
- set_active(index)[source]
-
Переключает (активирует или деактивирует) чекбокс по индексу.
Обратные вызовы будут вызваны, если
eventsonравно True.- Параметры:
-
- indexint
-
Индекс чекбокса, который нужно переключить.
- Исключения:
-
- ValueError
-
Если index некорректен.
- classmatplotlib.widgets.Cursor(ax, horizOn=True, vertOn=True, useblit=False, **lineprops)[source]
-
Bases:
AxesWidgetПерекрестие курсора, которое охватывает Axes и перемещается вместе с курсором мыши.
Для того, чтобы курсор оставался отзывчивым, необходимо сохранить на него ссылку.
- Параметры:
-
-
ax
matplotlib.axes.Axes -
Объект
Axes, к которому привязывается курсор. - horizOnbool, по умолчанию: True
-
Определяет, рисовать ли горизонтальную линию.
- vertOnbool, по умолчанию: True
-
Определяет, рисовать ли вертикальную линию.
- useblitbool, по умолчанию: False
-
Использовать блиттинг для более быстрого рисования, если поддерживается бэкендом. Подробнее см. в руководстве Ускорение рендеринга с помощью блиттинга.
-
ax
- Другие параметры:
Примеры
См. Курсор.
- clear(event)[source]
-
Внутренний обработчик событий для очистки курсора.
- onmove(event)[source]
-
Внутренний обработчик событий для рисования курсора при перемещении мыши.
- classmatplotlib.widgets.EllipseSelector(ax, onselect, drawtype=<deprecated parameter>, minspanx=0, minspany=0, useblit=False, lineprops=<deprecated parameter>, 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.- Parameters:
-
-
ax
Axes -
Родительская ось виджета.
- onselectfunction
-
Функция обратного вызова, которая вызывается после события отпускания и создания выделения. Она должна иметь следующий прототип:
def onselect(eclick: MouseEvent, erelease: MouseEvent)
где eclick и erelease — события нажатия и отпускания мыши
MouseEvent, которые запускают и завершают выделение. - minspanxfloat, default: 0
-
Выделения с размахом по оси x меньше или равным minspanx удаляются (если уже существуют) или отменяются.
- minspanyfloat, default: 0
-
Выделения с размахом по оси y меньше или равным minspanx удаляются (если уже существуют) или отменяются.
- useblitbool, default: False
-
Использовать ли кеширование (blitting) для более быстрого отображения (если поддерживается бэкэндом). Подробности см. в учебном пособии Более быстрое отображение с помощью кеширования.
- propsdict, optional
-
Свойства, с помощью которых рисуется эллипс. Допустимые свойства см. в
matplotlib.patches.Patch. По умолчанию:dict(facecolor='red', edgecolor='black', alpha=0.2, fill=True) - spancoords{"data", "pixels"}, default: "data"
-
В каких координатах интерпретировать minspanx и minspany — данных или пикселей.
-
button
MouseButton, списокMouseButton, по умолчанию: все кнопки -
Кнопки, которые запускают выделение прямоугольника.
- grab_rangefloat, default: 10
-
Расстояние в пикселях, в пределах которого можно активировать элементы управления интерактивного инструмента.
- handle_propsdict, optional
-
Свойства, с помощью которых отображаются интерактивные элементы управления (маркеры графических объектов). Допустимые свойства см. в аргументах маркера в
matplotlib.lines.Line2D. Значения по умолчанию определены вmpl.rcParamsза исключением значения по умолчанию дляmarkeredgecolor, которое будет таким же, как свойствоedgecolorв props. - interactivebool, default: False
-
Отображать ли набор элементов управления, позволяющих взаимодействовать с виджетом после его отрисовки.
- state_modifier_keysdict, optional
-
Модификаторы клавиш, которые влияют на поведение виджета. Значения изменяют значения по умолчанию, которые следующие:
- "move": Переместить существующую фигуру, по умолчанию: без модификатора.
- "clear": Очистить текущую фигуру, по умолчанию: "escape".
- "square": Сделать фигуру квадратной, по умолчанию: "shift".
- "center": Изменить форму вокруг ее центра, по умолчанию: "ctrl".
- "rotate": Повернуть фигуру вокруг центра на -45° и 45°, по умолчанию: "r".
"square" и "center" могут быть объединены. Квадратная форма может быть определена в координатах данных или отображения, как определено аргументом
use_data_coordinatesпри создании селектора. - drag_from_anywherebool, default: False
-
Если
True, виджет можно переместить, нажав на любую точку внутри его границ. - ignore_event_outsidebool, default: False
-
Если
True, события, вызванные за пределами селектора, будут игнорироваться. - use_data_coordinatesbool, default: False
-
Если
True, квадратная форма селектора определяется в координатах данных, а не в координатах отображения.
-
ax
Примеры
Прямоугольные и эллиптические селекторы
- propertydraw_shape[source]
- классmatplotlib.widgets.Lasso(ax, xy, callback=None, useblit=True)[source]
-
Базы:
AxesWidgetКривая выделения произвольной формы.
Выбранный путь можно использовать совместно с
contains_pointдля выбора точек данных из изображения.В отличие от
LassoSelector, для его инициализации требуется начальная точка xy, и событияLassoуничтожаются при отпускании.- Параметры:
-
-
ax
Axes -
Родительский Axes для виджета.
- xy(float, float)
-
Координаты начала выделения лассо.
- useblitbool, по умолчанию: True
-
Использовать ли кеширование для ускорения отрисовки (если это поддерживается бэкендом). Подробности см. в руководстве Ускорение отрисовки с помощью кеширования.
- callbackcallable
-
Когда выделение лассо отпускается, вызывается функция callback и передаются вершины выбранного пути.
-
ax
- onmove(event)[source]
- onrelease(event)[source]
- классmatplotlib.widgets.LassoSelector(ax, onselect=None, useblit=True, props=None, button=None)[source]
-
Базы:
_SelectorWidgetКривая выделения произвольной формы.
Чтобы селектор оставался отзывчивым, необходимо сохранить на него ссылку.
Выбранный путь можно использовать совместно с
contains_pointдля выбора точек данных из изображения.В отличие от
Lasso,LassoSelectorнаписан с интерфейсом, похожим наRectangleSelectorиSpanSelector, и будет продолжать взаимодействовать с Axes до отключения.Пример использования:
ax = plt.subplot() ax.plot(x, y) def onselect(verts): print(verts) lasso = LassoSelector(ax, onselect)- Параметры:
-
-
ax
Axes -
Родительский Axes для виджета.
- onselectфункция
-
Когда выделение лассо отпускается, вызывается функция onselect и передаются вершины выбранного пути.
- useblitbool, по умолчанию: True
-
Использовать ли кеширование для ускорения отрисовки (если это поддерживается бэкендом). Подробности см. в руководстве Ускорение отрисовки с помощью кеширования.
- propsdict, необязательно
-
Свойства, с помощью которых рисуется линия, см.
matplotlib.lines.Line2Dдля допустимых свойств. Значения по умолчанию определены вmpl.rcParams. -
button
MouseButtonили списокMouseButton, необязательно -
Кнопки мыши, используемые для выделения прямоугольником. По умолчанию
None, что соответствует всем кнопкам.
-
ax
- onpress(event)[source]
-
[Устаревшее]
Примечания
Устарело начиная с версии 3.5: Используйте вместо этого press.
- onrelease(event)[source]
-
[Устаревшее]
Примечания
Устарело начиная с версии 3.5: Используйте вместо этого release.
- 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Предоставляет вертикальный (по умолчанию) и/или горизонтальный курсор, совместно используемый между несколькими осями.
Чтобы курсор оставался отзывчивым, необходимо сохранить на него ссылку.
- Parameters:
-
- canvasobject
-
Этот параметр полностью не используется и сохраняется только для обратной совместимости.
-
axeslist of
matplotlib.axes.Axes -
Оси
Axesдля прикрепления курсора. - useblitbool, default: True
-
Использовать кеширование для более быстрого рисования, если это поддерживается бэкендом. Подробности см. в учебнике Более быстрое отображение с помощью кеширования.
- horizOnbool, default: False
-
Рисовать ли горизонтальную линию.
- vertOnbool, default: True
-
Рисовать ли вертикальную линию.
- Other Parameters:
Примеры
См. Multicursor.
- background()[source]
-
[Устарело]
Примечания
Устарело начиная с версии 3.6:
- propertycanvas[source]
- clear(event)[source]
-
Очистить курсор.
- connect()[source]
-
Подключить события.
- disconnect()[source]
-
Отключить события.
- 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
Примечания
Если после удаления точек остаётся только одна точка, селектор возвращается в состояние незавершенности, и можно начать рисовать новый многоугольник с уже существующей точки.
Примеры
Селектор многоугольника Выбрать индексы из коллекции с помощью селектора многоугольника
- propertyline[source]
- onmove(event)[source]
-
Обработчик событий перемещения курсора и валидатор.
- propertyvertex_select_radius[source]
- propertyverts
-
Вершины многоугольника в виде списка пар
(x, y).
- classmatplotlib.widgets.RadioButtons(ax, labels, active=0, activecolor='blue')[source]
-
Bases:
AxesWidgetРадиокнопка для графического интерфейса.
Для сохранения отзывчивости кнопок необходимо сохранить ссылку на этот объект.
Подключитесь к RadioButtons с помощью метода
on_clicked.- Атрибуты:
-
-
ax
Axes -
Родительский объект Axes для виджета.
- activecolorцвет
-
Цвет выбранной кнопки.
-
labelsсписок
Text -
Метки кнопок.
-
circlesсписок
Circle -
Кнопки.
- value_selectedстрока
-
Текст метки текущей выбранной кнопки.
-
ax
Добавление радиокнопок в
Axes.- Параметры:
-
-
ax
Axes -
Объект Axes, в который будут добавлены кнопки.
- labelsсписок строк
-
Метки кнопок.
- activeцелое число
-
Индекс выбранной по умолчанию кнопки.
- activecolorцвет
-
Цвет выбранной кнопки.
-
ax
- disconnect(cid)[source]
-
Удаление наблюдателя с идентификатором соединения cid.
- on_clicked(func)[source]
-
Подключение функции обратного вызова func к событиям нажатия на кнопки.
Возвращает идентификатор соединения, который можно использовать для отключения обратного вызова.
- set_active(index)[source]
-
Выбор кнопки с номером index.
Обратные вызовы будут вызваны, если
eventsonравно True.
- 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_styledict
-
Свойства ручек ползунка. Значения по умолчанию
Ключ
Значение
По умолчанию
Описание
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
-
Функция, вызываемая при изменении ползунка. Функция должна принимать массив NumPy с формой (2,) в качестве аргумента.
- Возвращает:
-
- 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, drawtype=<deprecated parameter>, minspanx=0, minspany=0, useblit=False, lineprops=<deprecated parameter>, 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
-
Выделения с размахом по оси x, меньшим или равным minspanx, удаляются (если уже существуют) или отменяются.
- minspanyfloat, по умолчанию: 0
-
Выделения с размахом по оси y, меньшим или равным 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, форма "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()>>> selector.add_state('square')См. также: Селекторы прямоугольников и эллипсов
- свойствоactive_handle[source]
- свойствоcenter
-
Центр прямоугольника в координатах данных.
- свойствоcorners
-
Углы прямоугольника в координатах данных, от нижнего левого угла, по часовой стрелке.
- свойствоdraw_shape[source]
- свойствоdrawtype[source]
- свойствоedge_centers
-
Середина сторон прямоугольника в координатах данных, слева, против часовой стрелки.
- свойствоextents
-
Возвращает (xmin, xmax, ymin, ymax) в координатах данных, как определено ограничивающей рамкой перед поворотом.
- свойствоgeometry
-
Возвращает массив формы (2, 5), содержащий координаты x (
RectangleSelector.geometry[1, :]) и y (RectangleSelector.geometry[0, :]) данных четырех углов прямоугольника, начиная и заканчивая в верхнем левом углу.
- свойствоinteractive[source]
- свойствоmaxdist[source]
- свойствоrotation
-
Поворот в градусах в интервале [-45°, 45°]. Поворот ограничен диапазоном для простоты реализации.
- свойствоto_draw[source]
- 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
-
Начальное положение ползунка.
- valfmtстрока, по умолчанию: None
-
Строка форматирования значения ползунка в формате %-формата. Если None, используется
ScalarFormatter. - closedminbool, по умолчанию: True
-
Является ли интервал ползунка закрытым снизу.
- closedmaxbool, по умолчанию: True
-
Является ли интервал ползунка закрытым сверху.
- sliderminSlider, по умолчанию: None
-
Не допускать, чтобы текущий ползунок имел значение меньше значения Slider slidermin.
- slidermaxSlider, по умолчанию: None
-
Не допускать, чтобы текущий ползунок имел значение больше значения Slider slidermax.
- draggingbool, по умолчанию: True
-
Если True, ползунок можно перетаскивать мышкой.
- valstepfloat или массив-подобный объект, по умолчанию: None
-
Если число с плавающей точкой, ползунок будет перемещаться на кратные 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.- Parameters:
-
-
ax
matplotlib.axes.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()
См. также: Селектор диапазона
- propertyactive_handle[source]
- connect_default_events()[source]
-
Подключить основные события холста к методам.
- propertydirection
-
Направление селектора диапазона: 'vertical' или 'horizontal'.
- propertyextents
-
Возвращает границы селектора диапазона.
- new_axes(ax)[source]
-
Установить SpanSelector для работы с новой осью.
- propertypressv[source]
- propertyprev[source]
- propertyrect[source]
- propertyrectprops[source]
- propertyspan_stays[source]
- classmatplotlib.widgets.SubplotTool(targetfig, toolfig)[source]
-
Bases:
WidgetИнструмент для настройки параметров подграфика
matplotlib.figure.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, в который будет помещен элемент. - labelстрока
-
Подпись для текстового поля.
- initialстрока
-
Начальное значение в текстовом поле.
- colorцвет
-
Цвет поля.
- hovercolorцвет
-
Цвет поля при наведении курсора.
- label_padвещественное число
-
Расстояние между подписью и правой стороной текстового поля.
- textalignment{'слева', 'по центру', 'справа'}
-
Горизонтальное выравнивание текста.
-
ax
- propertyDIST_FROM_LEFT[source]
- begin_typing(x)[source]
- disconnect(cid)[source]
-
Удалить наблюдателя с идентификатором подключения cid.
- on_submit(func)[source]
-
При нажатии Enter или выходе из поля ввода вызвать эту функцию func с событием.
Возвращает идентификатор подключения, который можно использовать для отключения.
- on_text_change(func)[source]
-
При изменении текста вызвать эту функцию func с событием.
Возвращает идентификатор подключения, который можно использовать для отключения.
- position_cursor(x)[source]
- 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
matplotlib.axes.Axes -
Ось Matplotlib, на которой отображаются управляющие маркеры инструментов.
- x, yОдномерные массивы
-
Координаты управляющих маркеров.
- markerстрока, по умолчанию: 'o'
-
Форма маркера, используемого для отображения маркера. См.
matplotlib.pyplot.plot. - marker_propsсловарь, необязательно
-
Дополнительные свойства маркера. См.
matplotlib.lines.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
matplotlib.axes.Axes -
Матplotlib Axes, где отображаются управляющие элементы инструмента.
- positionsОдномерный массив
-
Положения элементов управления в координатах данных.
- direction{"горизонтально", "вертикально"}
-
Направление элементов управления, либо 'вертикально', либо 'горизонтально'
- line_propsdict, необязательно
-
Дополнительные свойства линии. См.
matplotlib.lines.Line2D. - useblitbool, по умолчанию: True
-
Использовать ли blitting для более быстрого рисования (если поддерживается бэкэндом). Подробности см. в руководстве Ускорение рендеринга с помощью 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.6.0/api/widgets_api.html