Animation à partir de matplotlib pas de travail en spyder
Je suis nouveau sur python et stackoverflow, et je vais sur des exemples à matplotlib. J'ai cherché la solution à ce problème avec pas de chance, même si j'ai été capable de localiser un précédemment question sans réponse dans stackoverflow avec le même problème.
En gros, j'ai copié le code de l'exemple à matplotlib; par exemple:
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation
def data_gen(t=0):
cnt = 0
while cnt < 1000:
cnt += 1
t += 0.1
yield t, np.sin(2*np.pi*t) * np.exp(-t/10.)
def init():
ax.set_ylim(-1.1, 1.1)
ax.set_xlim(0, 10)
del xdata[:]
del ydata[:]
line.set_data(xdata, ydata)
return line,
fig, ax = plt.subplots()
line, = ax.plot([], [], lw=2)
ax.grid()
xdata, ydata = [], []
def run(data):
# update the data
t, y = data
xdata.append(t)
ydata.append(y)
xmin, xmax = ax.get_xlim()
if t >= xmax:
ax.set_xlim(xmin, 2*xmax)
ax.figure.canvas.draw()
line.set_data(xdata, ydata)
return line,
ani = animation.FuncAnimation(fig, run, data_gen, blit=False, interval=10,
repeat=False, init_func=init)
plt.show()
J'ai exécuter divers animation des exemples dans les deux Anaconda 2 (python 2.7) & 3 (python 3.5), et les deux me donner un vide parcelle sans animation. Cependant, chaque animation fonctionne parfaitement bien dans Enthought de la Canopée.
Est là quelque chose de simple, je suis absent lors de l'utilisation de spyder?
Vous devez vous connecter pour publier un commentaire.
Vous devez changer le backend pour exécuter une animation dans la console IPython. Vous pouvez le faire en exécutant
%matplotlib qt
de commande avant de l'animation.Si Vous ne souhaitez pas utiliser cette commande à chaque fois, Vous pouvez aller à:
Tools > Preferences > IPython Console > Graphics > Backend
et changer de
"Inline"
à"Automatic"
.Mise à jour: Février 2018, c'est maintenant en python>Préférences Dans la fenêtre, sélectionnez la console IPython de la LH volet de la fenêtre. Sélectionnez l'onglet Graphiques et backend est là.
Pour plus de détails, veuillez lire cette.
%matplotlib qt5
a fonctionné pour moi.%matplotlib gt5
. Je ne sais pas pourquoi modifiant les préférences ne fonctionne pas.