有没有一种简便的方法可以在Python中设置散点图的动画?

时间:2020-03-28 17:46:45

标签: animation optimization scatter-plot

我今天一直在讨论一些讨论,但是我不知道如何实施针对我的问题的建议解决方案。希望有人能给我一个可行的例子或提示。

因此,在当前代码中,我基本上从三角形的顶点开始,并在坐标(2,2)处绘制起点。在for循环中,我生成一个介于1到6之间的随机数,并且根据该数字是什么,起点将移动到其中一个顶点的一半,这相当于绘制一个新点。然后,使用新点重复n = 5次(在下面的代码中)该过程

我希望看到图形/曲线图,因为新的点在一定数量的迭代n中被绘制,以查看出现了什么图片。我怎样才能做到这一点?有一些简单的方法吗?

from matplotlib import pyplot as plt
import random as r



x = [0, 6, 3]
y = [0, 0, 8]

x0 = x[0]
y0 = y[0]
x1 = x[1]
y1 = y[1]
x2 = x[2]
y2 = y[2]

pt = [2,2]
plt.scatter(pt[0], pt[1], color='blue')
plt.scatter(x,y,color='red')

for i in range(1,5):

  randNum = r.randint(1,6)

  if randNum == 1 or randNum == 2:
      plt.scatter((pt[0]+x0)/2,(pt[1]+y0)/2,color='black')
      pt = [(pt[0]+x0)/2,(pt[1]+y0)/2]

  elif randNum == 3 or randNum == 4:
      plt.scatter((pt[0]+x1)/2,(pt[1]+y1)/2,color='black')
      pt = [(pt[0]+x1)/2,(pt[1]+y1)/2]

  elif randNum == 5 or randNum == 6:
      plt.scatter((pt[0]+x2)/2,(pt[1]+y2)/2,color='black')
      pt = [(pt[0]+x2)/2,(pt[1]+y2)/2]



plt.show()

0 个答案:

没有答案