python 2.7.6 и matplotlib.pyplot AttributeError: showMaximized

Когда мы запускаем скрипт Python (test.py):

import matplotlib.pyplot as plt
import pylab 
import win32com.client as win32 
import os

mng =  pylab.get_current_fig_manager()
mng.window.showMaximized()

Он покажет следующее сообщение об ошибке:

Traceback (most recent call last):
  File "C:\test.py", line 6, in <module>
    mng.window.showMaximized()
  File "C:\Python27\lib\lib-tk\Tkinter.py", line 1826, in __getattr__
    return getattr(self.tk, attr)
AttributeError: showMaximized

Наша операционная система — Windows 7. Мы установили «matplotlib‑1.3.1.win32‑py2.7.exe» и соответствующие numpy, dateutil, pytz, pyparsing, six и win32com.client.

Мы не смогли найти решение после поиска. Может ли какой-нибудь гуру предложить некоторые комментарии/решения? Спасибо.


person Chubaka    schedule 24.07.2014    source источник


Ответы (1)


Объект, возвращаемый get_current_fig_manager, зависит от бэкенда, используемого для рендеринга изображения. Судя по вашей ошибке, похоже, вы используете бэкэнд Tk, поэтому объект window будет окном Tk, поэтому доступные методы будут такими же, как в окне Tk. Это не имеет showMaximized. Скорее всего, вам придется использовать mng.window.state('zoomed'). Подробнее см. в этом конкретном ответе.

person Oliver    schedule 04.08.2014