Update Bar_Chart + Récup_mat.py
This commit is contained in:
parent
02d08d6f40
commit
9ff02e1d3f
|
@ -12,57 +12,51 @@ HistoriqueGrille = list()
|
||||||
StratsResultats = list()
|
StratsResultats = list()
|
||||||
ListeStrategies = list()
|
ListeStrategies = list()
|
||||||
|
|
||||||
def simulation():
|
def matRecup(i, param):
|
||||||
"""->Grille"""
|
"""array*str-> array
|
||||||
iterations = 0
|
Récupère la matrice avec seulement le paramètre stratégie pour chaque joueur , à litération i voulue"""
|
||||||
while iterations <= MaxIterations :
|
matR = np.random.randint(0,1,(TailleGrilleX,TailleGrilleY))
|
||||||
partie_globale()
|
|
||||||
pass
|
|
||||||
|
|
||||||
|
|
||||||
|
matrice = HistoriqueGrilles[i]
|
||||||
|
|
||||||
|
|
||||||
|
for ligne in range (0,TailleGrilleX): #int ligne
|
||||||
|
for colonne in range (0, TailleGrilleY): #int colonne
|
||||||
|
matR[ligne][colonne]=matrice[ligne][colonne][param]
|
||||||
|
|
||||||
|
return matR
|
||||||
|
|
||||||
|
|
||||||
fig=plt.figure()
|
fig=plt.figure()
|
||||||
fig.suptitle('Animation des stratégies')
|
fig.suptitle('Animation des stratégies')
|
||||||
cmap = mpl.colors.ListedColormap(["black","green","blue","red"])
|
cmap = mpl.colors.ListedColormap(["black","green" ,"red" ,"blue" ,"yellow"])
|
||||||
bounds=[0,1,2,3]
|
bounds=[0,1,2,3,4,5]
|
||||||
norm=mpl.colors.BoundaryNorm(bounds, cmap.N)
|
norm=mpl.colors.BoundaryNorm(bounds, cmap.N)
|
||||||
img=plt.imshow(matRecup(0, 'stratégies'), interpolation = "nearest", cmap = cmap , norm = norm)
|
img=plt.imshow(matRecup(0, 'strategie'), interpolation = "nearest", cmap = cmap , norm = norm)
|
||||||
|
|
||||||
|
cb=plt.colorbar(img , cmap=cmap , norm=norm , boundaries = bounds , ticks=bounds)
|
||||||
|
labels = np.arange(1, 6, 1)
|
||||||
|
cb.set_ticklabels(labels)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
def update(next_iteration,*args):
|
def update(next_iteration,*args):
|
||||||
img.set_array(matRceup(0 , 'stratégies')
|
img.set_array(matRecup(next_iteration , 'strategie'))
|
||||||
return img,
|
return [img]
|
||||||
|
|
||||||
anim = animation.FuncAnimation(fig, update, frames=range(Maxiterations), interval=1000, blit=True , repeat = False)
|
anim = animation.FuncAnimation(fig, update, frames=range(MaxIterations), interval=1000, repeat = False)
|
||||||
plt.show()
|
plt.show()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
def matRecup(i, param):
|
|
||||||
array*str-> array
|
|
||||||
"""Récupère la matrice avec seulement le paramètre stratégie pour chaque joueur , à litération i voulue"""
|
|
||||||
|
|
||||||
|
|
||||||
matR = np.random.randint(0,1,TailleGrilleX,TailleGrilleY)
|
|
||||||
|
|
||||||
matrice = HistoriqueGrille[i]
|
|
||||||
|
|
||||||
for ligne in range (0,TailleGrilleX): #int ligne
|
|
||||||
for colonne in range (0, TailleGrilleY): #int colonne
|
|
||||||
matStrat[ligne][colonne]=matrice[ligne][colonne][param]
|
|
||||||
|
|
||||||
return matR
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
def affichage_strats_resultats_totaux():
|
||||||
|
|
||||||
def bar_chart():
|
|
||||||
"""array->graph
|
"""array->graph
|
||||||
Retourne les diagrammes en baton qui mettent en évidence le nombre d'années
|
Retourne les diagrammes en baton qui mettent en évidence le nombre d'années
|
||||||
de prison en fonction de la stratégie et le nombre d'utilisation de chaque stratégies """
|
de prison en fonction de la stratégie et le nombre d'utilisation de chaque stratégies """
|
||||||
|
@ -85,31 +79,29 @@ def bar_chart():
|
||||||
|
|
||||||
|
|
||||||
for i in range(0,len(ListeStrategies)):
|
for i in range(0,len(ListeStrategies)):
|
||||||
stratUtili[i]=StratsResultats[i]['nb_utilisations']
|
stratUtili[i]=StratsResultats[i][0]
|
||||||
gain[i]=StratsResultats[i]['total_ans_prisons']
|
gain[i]=StratsResultats[i][1]
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#Diviser nb années de prison par le nb d'utilisatons de le stratégi (moyenne)
|
||||||
|
|
||||||
Strat=('1','2', '3','4' ,'5')
|
Strat=('1','2', '3','4' ,'5')
|
||||||
|
|
||||||
x_pos = np.arange(len(Strat))
|
x_pos = np.arange(len(Strat))
|
||||||
|
|
||||||
plt.subplot(221)
|
plt.subplot(221)
|
||||||
|
plt.bar(x_pos, stratUtili, align='center' , color='r')
|
||||||
|
plt.xlabel("Stratégies")
|
||||||
|
plt.ylabel("Nombre individus ayant adopté stratégie")
|
||||||
|
|
||||||
|
|
||||||
|
plt.xticks(x_pos,Strat)
|
||||||
|
|
||||||
|
|
||||||
|
plt.subplot(222)
|
||||||
plt.bar(x_pos, gain, align='center', color='b' )
|
plt.bar(x_pos, gain, align='center', color='b' )
|
||||||
|
|
||||||
plt.xlabel("Stratégies")
|
plt.xlabel("Stratégies")
|
||||||
plt.ylabel("Nombre d'années de prison")
|
plt.ylabel("Nombre d'années de prison")
|
||||||
|
|
||||||
plt.subplot(222)
|
|
||||||
plt.bar(x_pos, stratUtili, align='center' , color='r')
|
|
||||||
plt.xlabel("Stratégies")
|
|
||||||
plt.ylabel("NB individus ayant adopté stratégie")
|
|
||||||
|
|
||||||
|
|
||||||
plt.xticks(x_pos,Strat)
|
plt.xticks(x_pos,Strat)
|
||||||
|
|
||||||
plt.show()
|
plt.show()
|
||||||
|
|
Loading…
Reference in New Issue