小编use*_*207的帖子

matplotlib在动画后退出

我正在用Python编写一个程序,使用matplotlib(除其他外)运行一个动画,显示时间依赖的薛定谔方程的数值解.

一切都运行正常,但一旦动画完成运行,我希望它所在的窗口关闭.我这样做的方式(如下所示)有效,但抛出的异常似乎无法捕获.它适用于我需要它做的事情,但错误看起来非常混乱.

我有一个替代方法,可以在不抛出错误的情况下工作,但需要用户手动关闭窗口(对我来说是不可接受的).有人可以指出我做错了什么,或建议更好的选择?

我的代码的相关部分的简化版本如下:

from matplotlib import animation as ani
from matplotlib import pyplot as plt

multiplier = 0
def get_data():         # some dummy data to animate
    x = range(-10, 11)
    global multiplier
    y = [multiplier * i for i in x]
    multiplier += 0.005
    return x, y

class Schrodinger_Solver(object):
    def __init__(self, xlim = (-10, 10), ylim = (-10, 10), num_frames = 200):

        self.num_frames = num_frames
        self.fig = plt.figure()
        self.ax = self.fig.add_subplot(111, xlim = xlim, ylim = ylim)
        self.p_line, = …
Run Code Online (Sandbox Code Playgroud)

python animation matplotlib

10
推荐指数
2
解决办法
4224
查看次数

标签 统计

animation ×1

matplotlib ×1

python ×1