Python update histogram without animate

import matplotlib 
matplotlib.use('TkAgg')
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation
import random
import time
stat_num =5
range_num=5
n = 100
number_of_frames = 100
data = np.random.rand(n, number_of_frames)
fig = plt.figure()
class Plot(object):

    def __init__(self, data_source):
        super(Plot, self).__init__()
        self.data_source = data_source
        self.counts = -1


    def update_count(self):
        self.counts+=1

    def append(self, data):
        self.data_source.append(data)
        self.update_count()

    def update_hist(self):
        plt.cla()
        plt.hist(self.data_source[self.counts])

orig=[]
p=Plot(orig)
x = [random.randint(0, range_num) for _ in range(stat_num)]
p.append(x)
p.update_hist()
time.sleep(0.5)
x = [random.randint(0, range_num) for _ in range(stat_num)]
p.append(x)
x = [random.randint(0, range_num) for _ in range(stat_num)]
p.append(x)
x = [random.randint(0, range_num) for _ in range(stat_num)]
p.append(x)
plt.show()

Hi! I am new to python and want to write a tool that keep appending new data to a list and call the update function after to update the graph. However; I was only able to get one graph but not the other three. What seems to be the issue? Can I do it without the animation function? Thank you!