Problème d'animation avec pyplot

Fermé
tommy - Modifié le 22 avril 2020 à 17:23
yg_be Messages postés 22729 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024 - 22 avril 2020 à 18:11
Bonjour,
J'essaye ''d'animer'' un graphe avec pause (je ne comprend pas trop la fonction animation de matplotlib du coup j'essaye la méthode simple avec pause de pyplot).
Le problème, c'est que mon programme ne m'affiche que les derniers segments de calculés et non tout les segments calculés précédemment. Auriez vous une solution ? Voici mon code :

import random as rd
import matplotlib.pyplot as plt
plt.grid()

N = 30
n=5
X = [0]*n
Y = [0]*n
X2 = [0]*n
Y2 = [0]*n


for j in range (0, N):
    plt.pause(0.01)
    plt.xlim(-10,10)
    plt.ylim(-10,10)
    for i in range(0,n) :
        
        P = rd.random()
    

        if P<0.25 :
            X[i]=X[i]+1

        if (P>= 0.25 and P<0.5) : 
            X[i]=X[i]-1

        if (P>= 0.5 and P<0.75) :
            Y[i]= Y[i]+1

        if P>=0.75 :
            Y[i]= Y[i]-1

        plt.plot([X2[i],X[i]],[Y2[i],Y[i]])
        X2[i]=X[i]
        Y2[i]=Y[i] 
        
    

plt.show()


c'est un programme de marche au hasard selon un plan (0,x,y).
Merci pour votre attention (niveau débutant).

1 réponse

yg_be Messages postés 22729 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024 1 477
22 avril 2020 à 17:49
bonjour, quand je teste le programme il affiche pas mal de segments.
quels sont ceux qui manquent?
0
yg_be Messages postés 22729 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024 1 477
22 avril 2020 à 18:11
je ne sais pas trop ce que tu essaies de faire avec tes deux boucles. as-tu testé avec N=1?
0