Sto cercando di creare un istogramma animato dal mio codice qui sotto. Posso creare singoli istogrammi per ogni volta, tuttavia non riesco a ottenere i risultati animati con la funzione matplotlib.animation
o emulando il codice nello matplotlib tutorial.Istogramma animato Matplotlib
import numpy as np
import matplotlib.pyplot as plt
betas = [] # some very long list
entropy = [] # some very long list
for time in [0.0, 0.5, 1.0, 1.5, 2.0, 2.5, 3.0 , 3.5, 4.0, 4.5 5.0, 5.5, 6.0, 6.5 , 7.0, 7.5, 8.0 , 8,5 , 9.0, 9.5 , 10.0]:
plt.figure('entropy distribution at time %s ' % time)
indexbetas = {i for i, j in enumerate(betas) if j == time}
desiredentropies = [x for i, x in enumerate(entropy) if i in indexbetas] #the desiredentropies list depends on time
n, bins, patches = plt.hist(desiredentropies, 20, alpha=0.75 , label = 'desired entropies')
plt.xlabel(r"$S_{(\time=%d)}$" % time, fontsize=20)
plt.ylabel('Frequency of entropies')
plt.legend()
plt.grid(True)
plt.show()
sto lottando in particolare con l'alimentazione la mia lista desiredentropies
che dipende dalla elemento della lista time
per l'animazione.
esempio da tutorial richiede qualche secondo di esso funziona per me - Python 2.7.11 e 3.4.3/Linux Mint 17. Viene visualizzato un messaggio di errore in console/terminale/cmd.exe? – furas
@furas Ho aggiunto una modifica al mio OP. Il mio problema principale è quello di inserire l'elenco dei desideri desiderati che desidero creare un istogramma, con il passare del tempo. Nota: l'elenco delle stazioni desiderate cambia per ogni elemento nel tempo. –
Dovrai usare 'animation.FuncAnimation' – furas