我试图在matplotlib中的随机图上做一点动作。请参阅以下代码。
import numpy as np
import matplotlib.pyplot as plt
from time import sleep
plt.ion()
a = np.array([[1,1],[5,5],[2,4],[7,8],[4,2],[10,11]])
b = []
for i in range(a.shape[0]/2):
b.append([a[2*i],a[2*i+1]])
b = np.array(b)
for i in b: # retain this plot
plt.plot(i[:,0],i[:,1])
for i in b:
t = np.linspace(0,1,100)
for k in t:
x = (1-k)*i[0,0]+k*i[1,0]
y = (1-k)*i[0,1]+k*i[1,1]
sleep(0.1)
# plt.gcf().clear()
plt.scatter([x],[y])
plt.draw()
当我运行此代码时,一个点正在移动图,但它留下了痕迹。但是,我想要一个单点移动而不留痕迹并保留我在绘制点之前所做的情节。如果我使用clear()(我在代码中对它进行了评论),它将清除整个绘图并仅绘制点。
我尝试使用 FuncAnimation(),但我发现很难绘制所有其他数量超过300的图。
我有什么方法可以使用吗? Plase,help。
由于