I have a matplotlib.pyplot graph that updates in a loop to create an animation, using this kind of code that I got from another answer:
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
x = [1, 2, 3, 4] #x-coordinates
y = [5, 6, 7, 8] #y-coordinates
for t in range(10):
if t == 0:
points, = ax.plot(x, y, marker='o', linestyle='None')
else:
new_x = ... # x updated
new_y = ... # y updated
points.set_data(new_x, new_y)
plt.pause(0.5)
Now I want to put a plt.text() on the plot which will show the time that has passed. Putting a plt.text() statement inside the loop, however, creates a new text object at every iteration, putting them all on top of each other. So I must create only one text object at the first iteration, then modify it in subsequent iterations. Unfortunately, I cannot find in any documentation how to modify the properties of an instance of this object (it's a matplotlib.text.Text object) once it is created. Any help?