호기심을 위해 아래 코드에서이 작업을 수행하는 방법을 알고 싶습니다. 나는 답을 찾고 있었지만 쓸모가 없습니다.
import numpy as np
import matplotlib.pyplot as plt
data=np.random.exponential(scale=180, size=10000)
print ('el valor medio de la distribucion exponencial es: ')
print np.average(data)
plt.hist(data,bins=len(data)**0.5,normed=True, cumulative=True, facecolor='red', label='datos tamano paqutes acumulativa', alpha=0.5)
plt.legend()
plt.xlabel('algo')
plt.ylabel('algo')
plt.grid()
plt.show()
답변
나는 보통 사용
mng = plt.get_current_fig_manager()
mng.frame.Maximize(True)
를 호출하기 전에 plt.show()
창이 최대화됩니다. 이것은 ‘wx’백엔드에서만 작동합니다.
편집하다:
Qt4Agg 백엔드의 경우 kwerenda의 답변을 참조하십시오 .
답변
저는 Windows (WIN7)에서 Python 2.7.5 및 Matplotlib 1.3.1을 실행하고 있습니다.
다음 줄을 사용하여 TkAgg, QT4Agg 및 wxAgg에 대한 Figure 창을 최대화 할 수있었습니다.
from matplotlib import pyplot as plt
### for 'TkAgg' backend
plt.figure(1)
plt.switch_backend('TkAgg') #TkAgg (instead Qt4Agg)
print '#1 Backend:',plt.get_backend()
plt.plot([1,2,6,4])
mng = plt.get_current_fig_manager()
### works on Ubuntu??? >> did NOT working on windows
# mng.resize(*mng.window.maxsize())
mng.window.state('zoomed') #works fine on Windows!
plt.show() #close the figure to run the next section
### for 'wxAgg' backend
plt.figure(2)
plt.switch_backend('wxAgg')
print '#2 Backend:',plt.get_backend()
plt.plot([1,2,6,4])
mng = plt.get_current_fig_manager()
mng.frame.Maximize(True)
plt.show() #close the figure to run the next section
### for 'Qt4Agg' backend
plt.figure(3)
plt.switch_backend('QT4Agg') #default on my system
print '#3 Backend:',plt.get_backend()
plt.plot([1,2,6,4])
figManager = plt.get_current_fig_manager()
figManager.window.showMaximized()
plt.show()
작업 예제 (적어도 Windows의 경우)에 결합 된 이전 답변 (및 일부 추가 사항)에 대한 요약이 도움이되기를 바랍니다. 건배
답변
Qt 백엔드 (FigureManagerQT)에서 적절한 명령은 다음과 같습니다.
figManager = plt.get_current_fig_manager()
figManager.window.showMaximized()
답변
이렇게하면 TkAgg 백엔드가있는 Ubuntu 12.04에서 창이 전체 화면을 차지하게됩니다.
mng = plt.get_current_fig_manager()
mng.resize(*mng.window.maxsize())
답변
나를 위해 위의 어떤 것도 효과가 없었습니다. matplotlib 1.3.1이 포함 된 Ubuntu 14.04에서 Tk 백엔드를 사용합니다.
다음 코드는 최대화와 동일하지는 않지만 내 목적에 잘 맞는 전체 화면 플롯 창을 만듭니다.
from matplotlib import pyplot as plt
mng = plt.get_current_fig_manager()
mng.full_screen_toggle()
plt.show()
답변
이것은 작동합니다 ( 적어도 TkAgg에서는) :
wm = plt.get_current_fig_manager()
wm.window.state('zoomed')
(위에서 채택하고 Tkinter를 사용하여 창을 눈에 띄게 확대하지 않고 사용 가능한 화면 크기를 얻는 방법이 있습니까? )
답변
이것은 일종의 해키이며 아마도 휴대용이 아닙니다. 빠르고 더러운 것을 찾고있는 경우에만 사용하십시오. 화면보다 훨씬 크게 설정하면 화면 전체를 정확하게 차지합니다.
fig = figure(figsize=(80, 60))
사실 Qt4Agg가있는 Ubuntu 16.04에서는 화면보다 크면 창 (전체 화면 아님)을 최대화합니다. (두 개의 모니터가있는 경우 그중 하나에서 최대화합니다.)