waitforbuttonpress()matplotlib可能的bug

时间:2016-10-12 19:34:45

标签: python matplotlib figure

根据以下代码考虑循环内的刷新图形:

import matplotlib.pyplot as plt

def fun_example():

    plt.ion()
    for ite in range(3):
        x = np.linspace(-2,6,100)
        y = (ite+1)*x

        figura = plt.figure(1)
        plt.plot(x,y,'-b')
        plt.waitforbuttonpress()
        plt.close()
    #endfor ite

#enddef fun_example

if __name__ == '__main__':
    fun_example()
#endif main

想法是用鼠标检查图形(例如,在调试期间使用图中工具栏中的缩放选项),一旦完成,按下按钮继续使用代码。至少在我的情况下(Windows 7,python 3.4.4,spyder 3.0.0dev),如果我打算鼠标点击图形进行缩放,效果与按钮相同。换句话说, waitforbuttonpress()返回 True ,数字消失了。

有什么建议吗?可能是一个错误吗?提前感谢大家。

1 个答案:

答案 0 :(得分:2)

根据the documentation,如果按下某个键,.waitforbuttonpress()将返回True,如果按下了鼠标按钮,则False将返回while True: if plt.waitforbuttonpress(): break 。因此,你想要的可能是这样的:

Promise<User> resultPromise = wsPromise.map(new F.Function<WS.Response, User>() {
    @Override
    public User apply(WS.Response response) throws Throwable {
        System.out.println(response.getBody());
        JsonNode json = response.asJson();
        return new User(json.get("username"), json.get("email"));
    }
});