Поиск draw_if_interactive() в pyplot.py
В модуле pyplot есть несколько выражений draw_if_interactive(), но я не могу найти определение этой функции нигде в модуле.
Исходя из интуиции и чтения, легко догадаться, что функция обеспечивает построение графика по требованию, но где я могу прочитать ее определение? Благодарю.
1 ответ
Решение
Функция фактически находится в коде бэкэнда. Фактическая реализация зависит от вашего бэкэнда. Например, функция с TkAgg
бэкэнд находится в backend_tkagg.py
:
def draw_if_interactive():
if matplotlib.is_interactive():
figManager = Gcf.get_active()
if figManager is not None:
figManager.show()
Похоже, такие же функции для других бэкэндов, они используют matplotlib.is_interactive
чтобы определить, является ли это интерактивным сеансом, а затем использовать специальные команды рисования бэкэнда для рисования изображения.