如何在类中使用matplotlib FuncAnimation

2024-04-19 23:31:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我正试图用python为我的keras模型进行回调。 所以我用matplotlib制作了一个时代与损失的实时图表

但问题是动画函数只被调用一次

请帮帮我

class myCallback(tf.keras.callbacks.Callback):

    epochs = [0,1,2,3,4]
    losses = [0,6,4,7,9]


    def __init__(self):
        self.fig = plt.figure()
        self.ax = self.fig.add_subplot(1,1,1)
        self.line = self.ax.plot([],[],lw = 4)
        self.animation = FuncAnimation(self.fig,self.animate,interval = 1000)
        plt.show()

    def on_epoch_end(self,epoch,logs):

        self.epochs.append(epoch)
        self.losses.append(logs["loss"])
        print(self.epochs,self.losses)


    def animate(self,i):
        #self.ax.clear()
        self.ax.plot(self.epochs,self.losses)
        print("Done")

Tags: selfplotdeffigpltaxkeraslogs