matplotlib.backend_bases
Абстрактные базовые классы определяют примитивы, которые должны реализовывать отрисовщики и графические контексты, чтобы служить бэкэндом matplotlib
-
RendererBase - Абстрактный базовый класс для обработки операций рисования/отрисовки.
-
FigureCanvasBase - Уровень абстракции, который отделяет
matplotlib.figure.Figureот зависимостей от бэкэнда, таких как область рисования пользовательского интерфейса -
GraphicsContextBase - Абстрактный базовый класс, предоставляющий цвет, стили линий и т. д...
-
Event - Базовый класс для всех обработок событий matplotlib. Производные классы, такие как
KeyEventиMouseEventхранят метаданные, такие как нажатые клавиши и кнопки, координаты x и y в пикселях и координатахAxes. -
ShowBase - Базовый класс для класса Show каждого интерактивного бэкэнда; вызываемый метод «show» затем назначается Show.__call__, унаследованный от ShowBase.
-
ToolContainerBase - Базовый класс для класса Toolbar каждого интерактивного бэкэнда.
-
StatusbarBase - Базовый класс для области сообщений.
-
class matplotlib.backend_bases.CloseEvent(name, canvas, guiEvent=None) -
Базы:
matplotlib.backend_bases.EventСобытие, срабатывающее при закрытии фигуры
В дополнение к атрибутам
Eventопределены следующие атрибуты события:
-
class matplotlib.backend_bases.DrawEvent(name, canvas, renderer) -
Базы:
matplotlib.backend_bases.EventСобытие, срабатывающее при операции рисования на холсте
В дополнение к атрибутам
Eventопределены следующие атрибуты события:- renderer
- экземпляр
RendererBaseдля события рисования
-
class matplotlib.backend_bases.Event(name, canvas, guiEvent=None) -
Базы:
objectСобытие matplotlib. Присоединяйте дополнительные атрибуты, как определено в
FigureCanvasBase.mpl_connect(). Ниже приведены определенные атрибуты и их значения по умолчанию- name
- имя события
- canvas
- экземпляр FigureCanvas, генерирующий событие
- guiEvent
- событие графического интерфейса, которое вызвало событие matplotlib
-
class matplotlib.backend_bases.FigureCanvasBase(figure) -
Bases:
objectПоверхность холста, на которой отображается рисунок.
Общедоступные атрибуты
- figure
- Экземпляр
matplotlib.figure.Figure
-
blit(bbox=None) -
Отображение холста в области bbox (по умолчанию — весь холст)
-
Производные классы бэкенда должны вызывать эту функцию при нажатии любой кнопки мыши. x, y — координаты на холсте: 0,0 — нижний левый угол. Кнопка и клавиша определяются в
MouseEvent.Этот метод будет вызывать все функции, связанные с событием «button_press_event», с экземпляром
MouseEvent.
-
Производные классы бэкенда должны вызывать эту функцию при отпускании любой кнопки мыши.
- x
- координаты на холсте, где 0=слева
- y
- координаты на холсте, где 0=снизу
- guiEvent
- родное событие пользовательского интерфейса, которое сгенерировало событие mpl
Этот метод будет вызывать все функции, связанные с событием ‘button_release_event’, с экземпляром
MouseEvent.
-
close_event(guiEvent=None) -
Этот метод будет вызван всеми функциями, связанными с событием ‘close_event’, с экземпляром
CloseEvent.
-
draw(*args, **kwargs) -
Отображение
Figure
-
draw_cursor(event) -
Отображение курсора в event.axes, если inaxes не None. Использование родного рисования пользовательского интерфейса для повышения эффективности, если это возможно
-
draw_event(renderer) -
Этот метод будет вызывать все функции, связанные с событием ‘draw_event’, с экземпляром
DrawEvent
-
draw_idle(*args, **kwargs) -
draw()только при бездействии; по умолчанию рисует, но бэкэнды могут переопределять
-
enter_notify_event(guiEvent=None, xy=None) -
Производные классы бэкенда должны вызывать эту функцию при входе в область холста
- guiEvent
- родное событие пользовательского интерфейса, которое сгенерировало событие mpl
- xy
- местоположение координат указателя при входе в область холста
-
events = ['resize_event', 'draw_event', 'key_press_event', 'key_release_event', 'button_press_event', 'button_release_event', 'scroll_event', 'motion_notify_event', 'pick_event', 'idle_event', 'figure_enter_event', 'figure_leave_event', 'axes_enter_event', 'axes_leave_event', 'close_event']
-
filetypes = {'eps': 'Encapsulated Postscript', 'ps': 'Postscript', 'png': 'Portable Network Graphics', 'svg': 'Scalable Vector Graphics', 'tif': 'Tagged Image File Format', 'svgz': 'Scalable Vector Graphics', 'tiff': 'Tagged Image File Format', 'pgf': 'PGF code for LaTeX', 'jpg': 'Joint Photographic Experts Group', 'rgba': 'Raw RGBA bitmap', 'jpeg': 'Joint Photographic Experts Group', 'raw': 'Raw RGBA bitmap', 'pdf': 'Portable Document Format'}
-
fixed_dpi = None
-
flush_events() -
Очистка событий пользовательского интерфейса для рисунка. Реализовано только для бэкэндов с графическим интерфейсом.
-
get_default_filename() -
Возвращает строку, которая включает расширение, подходящее для использования в качестве имени файла по умолчанию.
-
classmethod get_default_filetype() -
Получение формата файла по умолчанию для сохранения, как указано в rcParam
savefig.format. Возвращаемая строка исключает точку. Переопределено в бэкендах, которые поддерживают только один тип файла.
-
classmethod get_supported_filetypes() -
Возвращает словарь поддерживаемых форматов файлов для сохранения данного бэкенда
-
classmethod get_supported_filetypes_grouped() -
Возвращает словарь поддерживаемых форматов файлов для сохранения данного бэкенда, где ключами являются названия типов файлов, такие как «Joint Photographic Experts Group», а значениями — список расширений имен файлов, используемых для этого типа файла, например, [«jpg», «jpeg»].
-
get_width_height() -
Возвращает ширину и высоту рисунка в пунктах или пикселях (в зависимости от бэкенда), усеченные до целых чисел
-
get_window_title() -
Получение текста заголовка окна, содержащего рисунок. Возвращает None, если окна нет (например, для бэкенда PS).
-
grab_mouse(ax) -
Установка дочерних осей, которые в данный момент захватывают события мыши. Обычно вызывается самими виджетами. Вызов этого метода является ошибкой, если мышь уже захвачена другой осью.
-
idle_event(guiEvent=None) -
Вызывается при бездействии графического интерфейса.
-
is_saving() -
Возвращает
True, когда рендерер обрабатывает сохранение в файл, а не отображение для буфера на экране.
-
key_press_event(key, guiEvent=None) -
Этот метод будет вызывать все функции, связанные с событием ‘key_press_event’, с экземпляром
KeyEvent
-
key_release_event(key, guiEvent=None) -
Этот метод будет вызывать все функции, связанные с событием ‘key_release_event’, с экземпляром
KeyEvent
-
leave_notify_event(guiEvent=None) -
Производные классы бэкенда должны вызывать эту функцию при выходе из области холста
- guiEvent
- родное событие пользовательского интерфейса, которое сгенерировало событие mpl
-
motion_notify_event(x, y, guiEvent=None) -
Производные классы бэкенда должны вызывать эту функцию при любом событии motion-notify-event.
- x
- координаты на холсте, где 0=слева
- y
- координаты на холсте, где 0=снизу
- guiEvent
- родное событие пользовательского интерфейса, которое сгенерировало событие mpl
Этот метод будет вызывать все функции, связанные с событием ‘motion_notify_event’, с экземпляром
MouseEvent.
-
mpl_connect(s, func) -
Подключение события со строкой s к func. Сигнатура func:
def func(event)
где событие — это
matplotlib.backend_bases.Event. Признаются следующие события:- ‘button_press_event’
- ‘button_release_event’
- ‘draw_event’
- ‘key_press_event’
- ‘key_release_event’
- ‘motion_notify_event’
- ‘pick_event’
- ‘resize_event’
- ‘scroll_event’
- ‘figure_enter_event’,
- ‘figure_leave_event’,
- ‘axes_enter_event’,
- ‘axes_leave_event’
- ‘close_event’
Для событий местоположения (нажатие и отпускание кнопки мыши), если указатель мыши находится над осью, переменная
event.inaxesбудет установлена вAxes, над которым происходит событие, и, дополнительно, будут определены переменныеevent.xdataиevent.ydata. Это местоположение мыши в координатах данных. См.KeyEventиMouseEventдля получения дополнительной информации.Возвращаемое значение — идентификатор подключения, который можно использовать с
mpl_disconnect().Пример использования:
def on_press(event): print('you pressed', event.button, event.xdata, event.ydata) cid = canvas.mpl_connect('button_press_event', on_press)
-
mpl_disconnect(cid) -
Отключение обратного вызова с идентификатором cid
Пример использования:
cid = canvas.mpl_connect('button_press_event', on_press) #...later canvas.mpl_disconnect(cid)
-
new_timer(*args, **kwargs) -
Создаёт новый бэкенд-специфичный подкласс
backend_bases.Timer. Это полезно для получения периодических событий через родную цикл событий бэкенда. Реализовано только для бэкэндов с графическим интерфейсом.Дополнительные аргументы:
- interval
- Интервал таймера в миллисекундах
- callbacks
- Последовательность (func, args, kwargs), где func(args, **kwargs) будет выполняться таймером каждые *interval.
-
onHilite(ev) -
Обработчик событий мыши, выделяющий объекты на курсоре. Подключите его к ‘motion_notify_event’ с помощью:
canvas.mpl_connect('motion_notify_event',canvas.onHilite)
-
onRemove(ev) -
Обработчик событий мыши, удаляющий верхний объект под курсором. Подключите его к ‘mouse_press_event’ с помощью:
canvas.mpl_connect('mouse_press_event',canvas.onRemove)
-
pick(mouseevent)
-
pick_event(mouseevent, artist, **kwargs) -
Этот метод будет вызван артистами, которые были выбраны, и запустит обратные вызовы
PickEventзарегистрированными слушателями.
-
print_figure(filename, dpi=None, facecolor='w', edgecolor='w', orientation='portrait', format=None, **kwargs) -
Отображение фигуры в печатном формате. Установите цвета заливки и обводки фигуры. Это полезно, так как некоторые среды разработки имеют серый фон заливки фигуры, и вы, вероятно, захотите переопределить это при печати.
Аргументы:
- filename
- также может быть объектом файла для изображений
- orientation
- сейчас применяется только к печати PostScript.
- dpi
- точек на дюйм для сохранения фигуры; если None, используется savefig.dpi
- facecolor
- цвет заливки фигуры
- edgecolor
- цвет обводки фигуры
- orientation
- ‘альбомная’ | ‘портретная’ (не поддерживается во всех средах)
- format
- если задано, принудительно устанавливает формат файла для сохранения
- bbox_inches
- Bbox в дюймах. Сохраняется только указанная часть фигуры. Если ‘tight’, пытается определить узкую область фигуры. Если None, используется savefig.bbox
- pad_inches
- Количество отступа вокруг фигуры, когда bbox_inches равно ‘tight’. Если None, используется savefig.pad_inches
- bbox_extra_artists
- Список дополнительных артистов, которые будут учтены при вычислении узкой области.
-
release_mouse(ax) -
Освобождение захвата мыши, удерживаемого осями, ax. Обычно вызывается виджетами. Это можно вызывать даже в том случае, если у ax нет текущего захвата мыши.
-
resize(w, h) -
установка размера холста в пикселях
-
resize_event() -
Этот метод вызовет все функции, связанные с событием ‘resize_event’, с
ResizeEvent
-
scroll_event(x, y, step, guiEvent=None) -
Производные классы бэкендов должны вызывать эту функцию при любом событии прокрутки. x,y — координаты холста: 0,0 — нижний левый угол. button и key определены в MouseEvent.
Этот метод вызовет все функции, связанные с событием ‘scroll_event’, с
MouseEventэкземпляром.
-
set_window_title(title) -
Установка текста заголовка окна, содержащего фигуру. Обратите внимание, что это не имеет эффекта, если нет окна (например, бэкенд PS).
-
start_event_loop(timeout) -
Запуск цикла событий. Используется для запуска блокирующего цикла событий, чтобы интерактивные функции, такие как ginput и waitforbuttonpress, могли ожидать событий. Не следует путать с основным циклом событий графического интерфейса, который всегда работает и не имеет к этому никакого отношения.
Реализовано только для бэкендов с графическим интерфейсом.
-
start_event_loop_default(timeout=0) -
Запуск цикла событий. Используется для запуска блокирующего цикла событий, чтобы интерактивные функции, такие как ginput и waitforbuttonpress, могли ожидать событий. Не следует путать с основным циклом событий графического интерфейса, который всегда работает и не имеет к этому никакого отношения.
Эта функция предоставляет функцию цикла событий по умолчанию на основе time.sleep, которая предназначена для использования до тех пор, пока не будут написаны функции цикла событий для каждого бэкенда графического интерфейса. В связи с этим она вызывает предупреждение о устаревании.
Вызов:
start_event_loop_default(self,timeout=0)
Этот вызов блокируется до тех пор, пока функция обратного вызова не вызовет stop_event_loop() или не будет достигнут timeout. Если timeout <=0, таймаут никогда не произойдёт.
-
stop_event_loop() -
Остановка цикла событий. Используется для остановки блокирующего цикла событий, чтобы интерактивные функции, такие как ginput и waitforbuttonpress, могли ожидать событий.
Реализовано только для бэкендов с графическим интерфейсом.
-
stop_event_loop_default() -
Остановка цикла событий. Используется для остановки блокирующего цикла событий, чтобы интерактивные функции, такие как ginput и waitforbuttonpress, могли ожидать событий.
Вызов:
stop_event_loop_default(self)
-
supports_blit = True
-
switch_backends(FigureCanvasClass) -
Создание экземпляра FigureCanvasClass
Используется для переключения бэкендов, например, для создания FigureCanvasPS из FigureCanvasGTK. Замечание: глубокое копирование не выполняется, поэтому любые изменения в одном из экземпляров (например, установка размера фигуры или свойств линии) будут отражены в другом.
-
-
class matplotlib.backend_bases.FigureManagerBase(canvas, num) -
Bases:
objectВспомогательный класс для режима pyplot, объединяет всё в удобный пакет
Общедоступные атрибуты:
- canvas
- экземпляр
FigureCanvasBase - num
- номер фигуры
-
destroy()
-
full_screen_toggle()
-
get_window_title() -
Получение текста заголовка окна, содержащего фигуру. Возвращает None для бэкендов без графического интерфейса (например, PS бэкенд).
-
key_press(event) -
Реализация стандартных комбинаций клавиш mpl, определенных в Клавиши быстрого доступа
-
resize(w, h) -
«Для бэкендов графического интерфейса, изменение размера окна (в пикселях).
-
set_window_title(title) -
Установка текста заголовка окна, содержащего фигуру. Обратите внимание, что это не имеет эффекта для бэкендов без графического интерфейса (например, PS бэкенд).
-
show() -
Для бэкендов с графическим интерфейсом, отображение окна фигуры и перерисовка. Для бэкендов без графического интерфейса, вызов исключения для перехвата
show(), для опционального предупреждения.
-
show_popup(msg) -
Отображение сообщения в всплывающем окне — только для графических интерфейсов
-
class matplotlib.backend_bases.GraphicsContextBase -
Bases:
objectАбстрактный базовый класс, предоставляющий цвет, стили линий и т. д...
-
copy_properties(gc) -
Копирует свойства из gc в self
-
dashd = {'solid': (None, None), 'dashed': (0, (6.0, 6.0)), 'dotted': (0, (1.0, 3.0)), 'dashdot': (0, (3.0, 5.0, 1.0, 5.0))}
-
get_alpha() -
Возвращает значение альфа, используемое для смешивания - не поддерживается во всех бэкендах
-
get_antialiased() -
Возвращает True, если объект должен пытаться выполнить рендеринг с антиалиасингом
-
get_capstyle() -
Возвращает стиль окончания линии в виде строки (‘butt’, ‘round’, ‘projecting’)
-
get_clip_path() -
Возвращает область обрезки в виде (путь, преобразование), где путь — экземпляр
Path, а преобразование — аффинное преобразование, которое нужно применить к пути перед обрезкой.
-
get_clip_rectangle() -
Возвращает область обрезки в виде экземпляра
Bbox
-
get_dashes() -
Возвращает информацию о пунктире в виде кортежа сведений о смещении пунктира.
Список пунктира — список четной длины, который указывает на длительность чернил, паузы в пикселях.
См. стр. 107 руководства PostScript BLUEBOOK для получения дополнительной информации.
Значение по умолчанию равно None
-
get_forced_alpha() -
Возвращает значение, указывающее, должно ли значение, возвращаемое get_alpha(), переопределять любые другие значения канала альфа.
-
get_gid() -
Возвращает идентификатор объекта, если он задан, иначе None.
-
get_hatch() -
Получает текущий стиль штриховки
-
get_hatch_path(density=6.0) -
Возвращает путь Path для текущей штриховки.
-
get_joinstyle() -
Возвращает стиль соединения линии в виде одной из (‘miter’, ‘round’, ‘bevel’)
-
get_linestyle(style) -
Возвращает стиль линии: одна из (‘solid’, ‘dashed’, ‘dashdot’, ‘dotted’).
-
get_linewidth() -
Возвращает ширину линии в пунктах как скалярное значение
-
get_rgb() -
Возвращает кортеж из трех или четырех чисел с плавающей точкой от 0 до 1.
-
get_sketch_params() -
Возвращает параметры наброска для объекта.
Возвращает: sketch_params : кортеж или
NoneКортеж из 3 элементов со следующими элементами:
-
scale: Амплитуда колебаний, перпендикулярных исходной линии. -
length: Длина колебаний вдоль линии. -
randomness: Коэффициент масштабирования, с помощью которого длина уменьшается или увеличивается.
Может вернуть
None, если параметры наброска не были заданы. -
-
get_snap() -
Возвращает настройку snap, которая может быть:
- True: вершины настраиваются на ближайший центр пикселя
- False: вершины остаются неизменными
- None: (авто) Если путь содержит только прямолинейные отрезки, округляются до ближайшего центра пикселя
-
get_url() -
Возвращает URL, если он задан, иначе None
-
restore() -
Восстанавливает графический контекст из стека — необходимо только для бэкендов, которые сохраняют графические контексты в стеке
-
set_alpha(alpha) -
Устанавливает значение альфа, используемое для смешивания - не поддерживается во всех бэкендах. Если
alpha=None, компоненты альфа переднего и заполняющего цветов будут использованы для установки их соответствующих прозрачностей (применимо); в противном случае,alphaпереопределит их.
-
set_antialiased(b) -
True, если объект должен быть нарисован с антиалиасингом
-
set_capstyle(cs) -
Устанавливает стиль окончания линии как строку (‘butt’, ‘round’, ‘projecting’)
-
set_clip_path(path) -
Устанавливает путь обрезки и преобразование. Путь должен быть экземпляром
TransformedPath.
-
set_clip_rectangle(rectangle) -
Устанавливает прямоугольник обрезки с помощью последовательности (слева, снизу, ширина, высота)
-
set_dashes(dash_offset, dash_list) -
Устанавливает стиль пунктира для графического контекста.
- dash_offset
- смещение (обычно 0).
- dash_list
- указание последовательности включения-выключения в точках.
(None, None)указывает сплошную линию
-
set_foreground(fg, isRGBA=False) -
Устанавливает цвет переднего плана. fg может быть строкой формата MATLAB, строкой html-цвета, кортежем rgb или rgba, или числом с плавающей точкой от 0 до 1. В последнем случае используется градация серого.
Если известно, что fg — rgba, установите
isRGBA=Trueдля повышения эффективности.
-
set_gid(id) -
Устанавливает идентификатор.
-
set_graylevel(frac) -
Устанавливает цвет переднего плана в уровень серого с помощью frac
-
set_hatch(hatch) -
Устанавливает стиль штриховки для заполнения
-
set_joinstyle(js) -
Устанавливает стиль соединения в одну из (‘miter’, ‘round’, ‘bevel’)
-
set_linestyle(style) -
Устанавливает стиль линии в одну из (‘solid’, ‘dashed’, ‘dashdot’, ‘dotted’). Можно указать настраиваемые стили пунктира, указав кортеж (смещение, пары пунктира). Например, у предопределенных стилей линии следующие значения.:
‘dashed’ : (0, (6.0, 6.0)), ‘dashdot’ : (0, (3.0, 5.0, 1.0, 5.0)), ‘dotted’ : (0, (1.0, 3.0)),
-
set_linewidth(w) -
Устанавливает ширину линии в пунктах
-
set_sketch_params(scale=None, length=None, randomness=None) -
Устанавливает параметры наброска.
Параметры: scale : float, необязательно
Амплитуда колебаний, перпендикулярных исходной линии, в пикселях. Если scale —
None, или не указан, фильтр наброска не будет предоставлен.length : float, необязательно
Длина колебаний вдоль линии в пикселях (по умолчанию 128.0)
randomness : float, необязательно
Коэффициент масштабирования, с помощью которого длина уменьшается или увеличивается (по умолчанию 16.0)
-
set_snap(snap) -
Устанавливает настройку snap, которая может быть:
- True: вершины настраиваются на ближайший центр пикселя
- False: вершины остаются неизменными
- None: (авто) Если путь содержит только прямолинейные отрезки, округляются до ближайшего центра пикселя
-
set_url(url) -
Устанавливает URL для ссылок в совместимых бэкендах
-
-
class matplotlib.backend_bases.IdleEvent(name, canvas, guiEvent=None) -
Bases:
matplotlib.backend_bases.EventСобытие, генерируемое графическим бэкендом, когда он находится в неактивном состоянии — полезно для пассивной анимации
-
class matplotlib.backend_bases.KeyEvent(name, canvas, key, x=0, y=0, guiEvent=None) -
Bases:
matplotlib.backend_bases.LocationEventСобытие нажатия клавиши (нажатие, отпускание).
Присоедините дополнительные атрибуты, как определено в
FigureCanvasBase.mpl_connect().В дополнение к атрибутам
EventиLocationEvent, определены следующие атрибуты:- key
- нажатая(ые) клавиша(ы). Может быть None, одиночный символ ASCII с учетом регистра (“g”, “G”, “#”, и т.д.), специальная клавиша (“control”, “shift”, “f1”, “up”, и т.д.) или комбинация вышеперечисленного (например, “ctrl+alt+g”, “ctrl+alt+G”).
Примечание
Клавиши модификаторов будут добавлены как префиксы к нажатой клавише и будут в порядке “ctrl”, “alt”, “super”. Исключением из этого правила является случай, когда нажатая клавиша сама является клавишей-модификатором, поэтому “ctrl+alt” и “alt+control” могут быть допустимыми значениями ключей.
Пример использования:
def on_key(event): print('you pressed', event.key, event.xdata, event.ydata) cid = fig.canvas.mpl_connect('key_press_event', on_key)
-
class matplotlib.backend_bases.LocationEvent(name, canvas, x, y, guiEvent=None) -
Bases:
matplotlib.backend_bases.EventСобытие, имеющее экранное расположение
Следующие дополнительные атрибуты определены и показаны со значениями по умолчанию.
В дополнение к атрибутам
Event, определены следующие атрибуты события:- x
- координата x - пиксели от левого края холста
- y
- координата y - пиксели от нижнего края холста
- inaxes
- экземпляр
Axes, если курсор мыши находится над осями - xdata
- координата x мыши в координатах данных
- ydata
- координата y мыши в координатах данных
x, y в координатах фигуры, 0,0 = низ, слева
-
inaxes = None
-
lastevent = None
-
x = None
-
xdata = None
-
y = None
-
ydata = None
-
class matplotlib.backend_bases.MouseEvent(name, canvas, x, y, button=None, key=None, step=0, dblclick=False, guiEvent=None) -
Bases:
matplotlib.backend_bases.LocationEvent- Событие мыши (‘button_press_event’,
- ‘button_release_event’, ‘scroll_event’, ‘motion_notify_event’).
В дополнение к атрибутам
EventиLocationEvent, определены следующие атрибуты:- button
- нажатая кнопка мыши None, 1, 2, 3, ‘up’, ‘down’ (up и down используются для событий прокрутки). Обратите внимание, что в бэкенде nbagg и средняя, и правая кнопки возвращают 3, так как нажатие правой кнопкой вызовет контекстное меню в некоторых браузерах.
- key
- нажатая клавиша, когда произошло событие мыши (см.
KeyEvent) - step
- количество шагов прокрутки (положительное для ‘up’, отрицательное для ‘down’)
Пример использования:
def on_press(event): print('you pressed', event.button, event.xdata, event.ydata) cid = fig.canvas.mpl_connect('button_press_event', on_press)x, y в координатах фигуры, 0,0 = низ, слева кнопка мыши нажата None, 1, 2, 3, ‘up’, ‘down’
-
dblclick = None
-
inaxes = None
-
step = None
-
x = None
-
xdata = None
-
y = None
-
ydata = None
-
Bases:
objectБазовый класс для курсора навигации, версия 2
бэкэнды должны реализовать холст, который обрабатывает подключения для ‘button_press_event’ и ‘button_release_event’. См.
FigureCanvasBase.mpl_connect()для получения дополнительной информацииОни также должны определить
-
save_figure() - сохранить текущую фигуру
-
set_cursor() - если вы хотите изменить значок указателя
-
_init_toolbar() - создайте свой инструмент панели инструментов
-
draw_rubberband() (optional) - отрисовать прямоугольник «резинка» для масштабирования по прямоугольнику
-
press() (optional) - каждый раз при нажатии пользователем кнопки мыши, вы получите уведомление с событием
-
release() (optional) - каждый раз при отпускании пользователем кнопки мыши, вы получите уведомление с событием
-
dynamic_update() (optional) - динамически обновлять окно во время навигации
-
set_message() (optional) - отображать сообщение
-
set_history_buttons() (optional) - можно изменить кнопки истории «назад»/«вперед», чтобы указать состояние «отключено»/«включено».
Вот и все, остальное мы сделаем!
-
переместиться назад в стеке ограничений просмотра
-
обработчик перетаскивания в режиме панорамирования/масштабирования
-
обработчик перетаскивания в режиме масштабирования
-
Перерисовать холсты, обновить локали
-
Нарисовать прямоугольник резинки для указания пределов масштабирования
-
Переместиться вперед в стеке ограничений просмотра
-
Восстановить исходный вид
-
Активировать инструмент панорамирования/масштабирования. Панорамирование с левой кнопкой, масштабирование с правой
-
Вызывается при нажатии пользователем кнопки мыши.
-
обработчик нажатия кнопки мыши в режиме панорамирования/масштабирования
-
обработчик нажатия кнопки мыши в режиме масштабирования по прямоугольнику
-
поместить текущие пределы просмотра и позицию в стек
-
это будет вызвано при отпускании пользователем кнопки мыши
-
обработчик отпускания кнопки мыши в режиме панорамирования/масштабирования
-
обработчик отпускания кнопки мыши в режиме масштабирования по прямоугольнику
-
Удалить резинку
-
Сохранить текущую фигуру
-
Установить текущий курсор на одно из значений
Cursors
-
Включить или отключить кнопки «Назад»/«Вперед»
-
Отобразить сообщение на панели инструментов или в строке состояния
-
Сбросить стек осей
-
Активировать режим масштабирования по прямоугольнику
-
-
exception matplotlib.backend_bases.NonGuiException -
Bases:
Exception
-
class matplotlib.backend_bases.PickEvent(name, canvas, mouseevent, artist, guiEvent=None, **kwargs) -
Базы:
matplotlib.backend_bases.Eventсобытие выбора, генерируется, когда пользователь выбирает область на холсте достаточно близко к элементу.
Атрибуты: все атрибуты
Eventплюс- mouseevent
- событие
MouseEvent, которое вызвало выбор - artist
- выбранный
Artist - other
- дополнительные атрибуты, зависящие от класса – например, выбор
Line2Dможет определять другие дополнительные атрибуты, чем событие выбораPatchCollection
Пример использования:
line, = ax.plot(rand(100), 'o', picker=5) # 5 points tolerance def on_pick(event): thisline = event.artist xdata, ydata = thisline.get_data() ind = event.ind print('on pick line:', zip(xdata[ind], ydata[ind])) cid = fig.canvas.mpl_connect('pick_event', on_pick)
-
class matplotlib.backend_bases.RendererBase -
Bases:
objectАбстрактный базовый класс для обработки операций рисования/рендеринга.
Следующие методы должны быть реализованы в бэкенде для полной функциональности (хотя реализация только
draw_path()даст высокопроизводительный бэкенд):Следующие методы должны быть реализованы в бэкенде по причинам оптимизации:
-
close_group(s) -
Закрыть элемент группировки с меткой s Используется только в настоящее время
backend_svg
-
draw_gouraud_triangle(gc, points, colors, transform) -
Нарисовать треугольник с заливкой по методу Гуро.
points — массив 3x2 (x, y) точек для треугольника.
colors — массив 3x4 RGBA цветов для каждой точки треугольника.
transform — аффинное преобразование, применяемое к точкам.
-
draw_gouraud_triangles(gc, triangles_array, colors_array, transform) -
Рисует серию треугольников с заливкой по методу Гуро.
points — массив Nx3x2 (x, y) точек для треугольников.
colors — массив Nx3x4 RGBA цветов для каждой точки треугольников.
transform — аффинное преобразование, применяемое к точкам.
-
draw_image(gc, x, y, im) -
Отобразить экземпляр изображения в текущих осях;
- gc
- объект GraphicsContext, содержащий информацию о обрезке
- x
- расстояние в пикселях от левой стороны холста.
- y
- расстояние от начала координат. То есть, если начало координат сверху, y — расстояние от верха. Если начало координат снизу, y — расстояние от низа.
- im
- экземпляр
matplotlib._image.Image
-
draw_markers(gc, marker_path, marker_trans, path, trans, rgbFace=None) -
Рисует маркер в каждой вершине пути. Это включает все вершины, включая точки управления на кривых. Чтобы избежать этого поведения, эти вершины следует удалить перед вызовом этой функции.
- gc
- экземпляр
GraphicsContextBase - marker_trans
- аффинное преобразование, применяемое к маркерам.
- trans
- аффинное преобразование, применяемое к пути.
Это реализация по умолчанию draw_markers, которая выполняет несколько вызовов
draw_path(). Некоторые бэкэнды могут переопределить этот метод, чтобы нарисовать маркер только один раз и использовать его многократно.
-
draw_path(gc, path, transform, rgbFace=None) -
Рисует экземпляр
Pathс заданным афинным преобразованием.
-
draw_path_collection(gc, master_transform, paths, all_transforms, offsets, offsetTrans, facecolors, edgecolors, linewidths, linestyles, antialiaseds, urls, offset_position) -
Рисует коллекцию путей, выбирая свойства рисования из списков facecolors, edgecolors, linewidths, linestyles и antialiaseds. offsets — список смещений, применяемых к каждому пути. Смещения в offsets преобразуются с помощью offsetTrans перед применением. offset_position может быть либо «screen», либо «data», в зависимости от пространства, в котором находятся смещения.
Это реализация по умолчанию
draw_path_collection(), которая выполняет несколько вызововdraw_path(). Некоторые бэкэнды могут переопределить этот метод, чтобы отрисовать каждый набор данных пути только один раз, а затем многократно ссылаться на этот путь с различными смещениями, цветами, стилями и т. д. Методы-генераторы_iter_collection_raw_paths()и_iter_collection()предназначены для помощи (и стандартизации) реализации в разных бэкендах. Настоятельно рекомендуется использовать эти генераторы, чтобы изменения в поведенииdraw_path_collection()можно было внести глобально.
-
draw_quad_mesh(gc, master_transform, meshWidth, meshHeight, coordinates, offsets, offsetTrans, facecolors, antialiased, edgecolors) -
Это реализация по умолчанию
draw_quad_mesh(), которая генерирует пути и затем вызываетdraw_path_collection().
-
draw_tex(gc, x, y, s, prop, angle, ismath='TeX!', mtext=None)
-
draw_text(gc, x, y, s, prop, angle, ismath=False, mtext=None) -
Отобразить экземпляр текста
- gc
- экземпляр
GraphicsContextBase - x
- координата x текста в координатах отображения
- y
- координата y базовой линии текста в координатах отображения
- s
- строка текста
- prop
- экземпляр
matplotlib.font_manager.FontProperties - angle
- угол поворота в градусах
- mtext
- экземпляр
matplotlib.text.Text
Примечание для разработчиков бэкендов
При попытке определить, правильно ли вы получили прямоугольник обводки (что позволяет правильно настроить расположение/выравнивание текста), полезно изменить строку в тексте.py:
if 0: bbox_artist(self, renderer)
на if 1, и тогда вместе с текстом будет отображаться и фактический прямоугольник обводки.
-
flipy() -
Возвращает True, если малые значения y находятся сверху для рендерера Используется только для рисования текста (
matplotlib.text) и изображений (matplotlib.image)
-
get_canvas_width_height() -
возвращает ширину и высоту холста в координатах отображения
-
get_image_magnification() -
Получить коэффициент увеличения изображений, переданных в
draw_image(). Позволяет бэкэнду иметь изображения с разным разрешением по сравнению с другими элементами.
-
get_texmanager() -
возвращает экземпляр
matplotlib.texmanager.TexManager
-
get_text_width_height_descent(s, prop, ismath) -
получает ширину и высоту, а также смещение от нижней части до базовой линии (опускание) в координатах отображения для строки s с
FontPropertiesprop
-
new_gc() -
Возвращает экземпляр
GraphicsContextBase
-
open_group(s, gid=None) -
Открыть элемент группировки с меткой s. Если gid задан, используйте gid в качестве идентификатора группы. Используется только в настоящее время
backend_svg.
-
option_image_nocomposite() -
переопределить этот метод для рендереров, которые не обязательно всегда хотят масштабировать и композировать растровые изображения. (например, SVG, PDF или PS)
-
option_scale_image() -
переопределить этот метод для рендереров, которые поддерживают произвольное масштабирование изображения (большинство векторизованных бэкэндов).
-
-
points_to_pixels(points) -
Преобразование точек в единицы отображения
- points
- число с плавающей точкой или массив NumPy чисел с плавающей точкой
Возвращает точки, преобразованные в пиксели
Вам необходимо переопределить эту функцию (если только у вашего бэкенда нет dpi, например, postscript или svg). Некоторые системы отображения предполагают некоторое значение для пикселей на дюйм:
points to pixels = points * pixels_per_inch/72.0 * dpi/72.0
-
start_filter() -
Используется в AggRenderer. Переключение на временный рендерер для эффектов фильтрации изображений.
-
start_rasterizing() -
Используется в MixedModeRenderer. Переключение на растровый рендерер.
-
stop_filter(filter_func) -
Используется в AggRenderer. Возврат к исходному рендереру. Содержимое временного рендерера обрабатывается с помощью filter_func и отображается на исходном рендерере как изображение.
-
stop_rasterizing() -
Используется в MixedModeRenderer. Возврат к векторному рендереру и отображение содержимого растрового рендерера как изображения на векторном рендерере.
-
strip_math(s)
-
-
class matplotlib.backend_bases.ResizeEvent(name, canvas) -
Базы:
matplotlib.backend_bases.EventСобытие, срабатывающее при изменении размера холста
В дополнение к атрибутам
Event, определены следующие атрибуты события:- width
- ширина холста в пикселях
- height
- высота холста в пикселях
-
class matplotlib.backend_bases.ShowBase -
Базы:
objectПростой базовый класс для генерации вызываемого объекта show() в бэкендах.
Подкласс должен переопределить метод mainloop().
-
mainloop()
-
-
class matplotlib.backend_bases.StatusbarBase(toolmanager) -
Базы:
objectБазовый класс для строки состояния
-
set_message(s) -
Отображение сообщения на панели инструментов или в строке состояния
Параметры: s : str
Текст сообщения
-
-
class matplotlib.backend_bases.TimerBase(interval=None, callbacks=None) -
Базы:
objectБазовый класс для предоставления событий таймера, полезных для анимации. Бэкендам необходимо реализовать несколько специфичных методов, чтобы использовать собственные механизмы тайминга, чтобы события таймера были интегрированы в их циклы событий.
Обязательные функции, которые должны быть реализованы:
-
_timer_start: Содержит код, специфичный для бэкенда, для запуска таймера -
_timer_stop: Содержит код, специфичный для бэкенда, для остановки таймера
Дополнительные переопределения:
-
_timer_set_single_shot: Код для установки таймера в режим однократного срабатывания, если он поддерживается объектом таймера. В противном случае сам классTimerбудет хранить флаг, а метод_on_timerдолжен быть переопределён, чтобы поддерживать такое поведение. -
_timer_set_interval: Код для установки интервала таймера, если для объекта таймера существует соответствующий метод. -
_on_timer: Это внутренняя функция, которую любой объект таймера должен вызывать, что обработает задачу запуска всех зарегистрированных обратных вызовов.
Атрибуты:
-
interval: Время между событиями таймера в миллисекундах. По умолчанию 1000 мс. -
single_shot: Флаг булевого типа, указывающий, должен ли этот таймер работать в режиме однократного срабатывания (запустить один раз и затем остановиться). По умолчаниюFalse. -
callbacks: Хранит список кортежей (func, args), которые будут вызываться при событиях таймера. Этот список может быть изменён напрямую, либо могут быть использованы функцииadd_callbackиremove_callback.
-
add_callback(func, *args, **kwargs) -
Регистрация
funcдля вызова таймером, когда событие сработает. Любые дополнительные аргументы будут переданы вfunc.
-
interval
-
remove_callback(func, *args, **kwargs) -
Удаление
funcиз списка обратных вызовов.argsиkwargsявляются необязательными и используются для различения копий одной и той же функции, зарегистрированной для вызова с разными аргументами.
-
single_shot
-
start(interval=None) -
Запуск объекта таймера.
intervalявляется необязательным и будет использован для сброса интервала таймера, если он предоставлен.
-
stop() -
Остановка таймера.
-
-
class matplotlib.backend_bases.ToolContainerBase(toolmanager) -
Базы:
objectБазовый класс для всех контейнеров инструментов, например, панелей инструментов.
Атрибуты
toolmanager ( ToolManagerобъект, который содержит инструменты, с которыми) этотToolContainerхочет взаимодействовать.-
add_tool(tool, group, position=-1) -
Добавление инструмента в этот контейнер
Параметры: tool : tool_like
Инструмент для добавления, см.
ToolManager.get_tool.group : str
Имя группы, в которую добавить этот инструмент.
position : int (необязательно)
Позиция внутри группы для размещения этого инструмента. По умолчанию — конец.
-
add_toolitem(name, group, position, image, description, toggle) -
Добавление элемента инструмента в контейнер
Этот метод должен быть реализован в каждом бэкенде
Обратный вызов, связанный со щелчком по кнопке, должен быть ТОЧНО
self.trigger_tool(name)Параметры: name : строка
Имя инструмента для добавления, это используется в качестве идентификатора инструмента и по умолчанию в качестве метки кнопок
group : Строка
Имя группы, к которой принадлежит этот инструмент
position : Целое число
Позиция инструмента в его группе, если -1, то он помещается в конец
image_file : Строка
Имя файла изображения для кнопки или
Nonedescription : Строка
Описание инструмента, используемое для всплывающих подсказок
toggle : Bool
-
True: Кнопка является переключателем (изменять состояние нажатия/отжатия между последовательными щелчками) -
False: Кнопка является обычной кнопкой (возвращается в состояние отжатия после отпускания)
-
-
remove_toolitem(name) -
Удаление элемента инструмента из
ToolContainerЭтот метод должен быть реализован в каждом бэкенде
Вызывается, когда
ToolManagerотправляетtool_removed_eventПараметры: name : строка
Имя инструмента для удаления
-
toggle_toolitem(name, toggled) -
Переключение элемента инструмента без срабатывания события
Параметры: name : Строка
Идентификатор инструмента для переключения
toggled : bool
Установить этот инструмент в переключенное состояние или нет.
-
trigger_tool(name) -
Вызвать инструмент
Параметры: name : Строка
Имя (идентификатор) инструмента, вызванного внутри контейнера
-
-
matplotlib.backend_bases.get_registered_canvas_class(format) -
Возвращает зарегистрированный холст по умолчанию для данного формата файла. Обрабатывает отложенный импорт требуемого бэкенда.
-
matplotlib.backend_bases.key_press_handler(event, canvas, toolbar=None) -
Реализация стандартных привязок клавиш mpl для холста и панели инструментов, описанных в Клавиатурных сокращениях для навигации
- event
- экземпляр
KeyEvent - canvas
- экземпляр
FigureCanvasBase - toolbar
- экземпляр
NavigationToolbar2
-
matplotlib.backend_bases.register_backend(format, backend, description=None) -
Регистрация бэкэнда для сохранения в заданном формате файла.
- format : str
- Расширение файла
- backend : строка модуля или класс холста
- Бэкэнд для обработки вывода файла
- description : str, необязательно
- Описание типа файла. По умолчанию пустая строка
© 2012–2016 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
http://matplotlib.org/1.5.3/api/backend_bases_api.html