首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用Python最大化plt.show()窗口

如何使用Python最大化plt.show()窗口
EN

Stack Overflow用户
提问于 2012-09-16 01:31:02
回答 23查看 174.4K关注 0票数 112

出于好奇,我想知道如何在下面的代码中做到这一点。我一直在寻找答案,但无济于事。

代码语言:javascript
运行
复制
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()
EN

回答 23

Stack Overflow用户

回答已采纳

发布于 2012-09-26 17:53:02

我通常用

代码语言:javascript
运行
复制
mng = plt.get_current_fig_manager()
mng.frame.Maximize(True)

在调用plt.show()之前,我会得到一个最大化的窗口。这只适用于'wx‘后端。

编辑:

有关Qt4Agg后端的信息,请参阅kwerenda的answer

票数 44
EN

Stack Overflow用户

发布于 2014-03-15 09:12:13

我在Windows (WIN7)上运行Python2.7.5&Matplotlib1.3.1。

我使用以下几行代码最大化了TkAgg、QT4Agg和wxAgg的图形窗口:

代码语言:javascript
运行
复制
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()

如果你想最大化多个图形,你可以使用

代码语言:javascript
运行
复制
for fig in figs:
    mng = fig.canvas.manager
    # ...

希望这个总结前面的答案(和一些补充)结合在一个实际的例子中(至少对于windows)会有所帮助。干杯

票数 182
EN

Stack Overflow用户

发布于 2013-09-16 17:39:04

对于Qt后端(FigureManagerQT),正确的命令是:

代码语言:javascript
运行
复制
figManager = plt.get_current_fig_manager()
figManager.window.showMaximized()
票数 87
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12439588

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档