首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >调整窗口大小后,Tkinter回调中出现Matplotlib异常

调整窗口大小后,Tkinter回调中出现Matplotlib异常
EN

Stack Overflow用户
提问于 2015-02-13 23:06:35
回答 1查看 1.6K关注 0票数 0

我对pyplot窗口有问题。当我在绘图完成后尝试更改窗口大小时,我得到了以下异常:

代码语言:javascript
复制
Exception in Tkinter callback
Traceback (most recent call last):
  File "C:\Python27\lib\lib-tk\Tkinter.py", line 1532, in __call__
    return self.func(*args)
  File "C:\Python27\lib\site-packages\matplotlib\backends\backend_tkagg.py", line 277, in resize
    self.resize_event()
  File "C:\Python27\lib\site-packages\matplotlib\backend_bases.py", line 1788, in resize_event
    self.callbacks.process(s, event)
  File "C:\Python27\lib\site-packages\matplotlib\cbook.py", line 540, in process
    proxy(*args, **kwargs)
  File "C:\Python27\lib\site-packages\matplotlib\cbook.py", line 415, in __call__
    return mtd(*args, **kwargs)
  File "C:\Python27\lib\site-packages\matplotlib\animation.py", line 859, in _handle_resize
    self._init_draw()
  File "C:\Python27\lib\site-packages\matplotlib\animation.py", line 1077, in _init_draw
    self._draw_frame(next(self.new_frame_seq()))
StopIteration

绘图由以下人员完成:

代码语言:javascript
复制
self.ani = animation.FuncAnimation(self.fig, self._set_data, self._is_running(), interval=20, repeat=False, blit=True)
plt.show()

当绘图完成时,一切都很好。最大化窗口后,抛出异常,最大化窗口但其全部为灰色(无图)。然后我再次改变它的大小,一切都恢复正常,并绘制出图。有人能告诉我哪里错了吗?或者去哪里找答案?

操作系统: Windows 7

Python: 2.9 32b

Matplotlib版本: 1.4.2,后端: TkAgg

EN

回答 1

Stack Overflow用户

发布于 2017-02-10 01:55:36

在处理大量数据时,我也遇到了类似的问题(在Fedora上)。但有不同的错误:OverflowError: In draw_path: Exceeded cell block limit。我有相同的错误保存图像与高dpi分辨率,作为plt.savefig('example.png', dpi=282)。低dpi参数没有错误。

我在https://github.com/matplotlib/matplotlib/issues/5907中找到了我的问题的解决方案

所以,基本的答案是:

尝试:

代码语言:javascript
复制
import matplotlib as mpl
mpl.rcParams['agg.path.chunksize'] = 10000 # the default is 0

您可以在matplotlibrc文件中更改它,使其成为默认设置。您可以使用以下命令找到matplotlibrc的位置:

代码语言:javascript
复制
matplotlib.matplotlib_fname()

然后,您可以更改agg.path.chunksize参数,取消该行的注释并设置新默认值:

代码语言:javascript
复制
agg.path.chunksize : 10000

http://matplotlib.org/users/customizing.html

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28502512

复制
相关文章

相似问题

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