如何在matplotlib中禁用屏幕更新

时间:2009-12-14 15:13:42

标签: python matplotlib scipy

我有一个循环,在每次迭代时为一个图添加一条线。现在这非常慢,因为它似乎每次重绘整个图形。是否可以在图形设置时禁用图形屏幕更新,然后重新启用它们。

以下是代码:

    for rr,dd in zip(angles,dists):
        if dd == inf:
            pass
        else:
            lineend = (array([cos(rr), sin(rr)]) * dd)+origin;
            plot([origin[0], lineend[0]], [origin[1], lineend[1]],'-b');

我知道我应该把这一切都合并到plot的一次调用中,我可能会为这个例子做。但是还有其他一些问题,这将是一个更大的问题,因此一般的解决方案将非常有用。

谢谢!

1 个答案:

答案 0 :(得分:2)

听起来你有interactive mode on,所以你应该使用命令将其设置为off

ioff()

请注意,当交互模式关闭时,您需要使用命令show()来显示图表。