Bonjour
Je cherche à simuler et visualiser le déplacements de points sur python. Ce déplacement doit suivre pour l'instant deux régles : les points doivent atteindre et maintenir une distance constante par rapport au centre du graphique et ils doivent également s'éloigner les + possible les uns des autres. Ainsi il se répartissent donc (en théorie ) de manière équidistante sur les contours d'un cercle. (c'est un programme qui sert de première étape afin de modéliser par la suite des comportements émergents et des phénomènes d'intelligence collective)
Le soucis c'est que mes connaissances en matière de programmation sont assez limitées.
J'ai cru comprendre que le meilleur outil pour ce genre de programme était d'utiliser matplotlib et en particulier sa fonction animation
Je dispose déjà d'un code permettant le déplacement aléatoire d'un point et je viens ici pour demander de l'aide et des piostes afin de faire évoluer ce code vers ce que je recherche
Le code en question :Merci beaucoup !Code:import numpy as np from matplotlib import pyplot as plt from matplotlib import animation import random # First set up the figure, the axis, and the plot element we want to animate fig = plt.figure() ax = plt.axes(xlim=(0, 10), ylim=(0, 10)) dot, = ax.plot([5], [5], 'ro') # initialization function: plot the background of each frame def init(): return dot, # animation function. This is called sequentially def animate(i): new_x = dot.get_xdata()[0] + random.uniform(-0.05, 0.05) new_y = dot.get_ydata()[0] + random.uniform(-0.05, 0.05) dot.set_data([new_x], [new_y]) return dot, # call the animator. blit=True means only re-draw the parts that have changed. anim = animation.FuncAnimation(fig, animate, init_func=init, frames=200, interval=20, blit=False) plt.show()
-----