web-dev-qa-db-fra.com

Dans Spyder, tracez en utilisant Matplotlib avec zoom interactif, etc.

Je suis récemment passé de Enthought Canopy à Anaconda et j'utilise Spyder IDE. J'ai remarqué que lorsque je trace des données,

import matplotlib.pyplot as plt
plt.figure()
plt.plot(rigs2)
plt.ion()
plt.show()

Il apparaît comme une figure en ligne dans la console IPython:

Result from the plt.plot() command

Cependant, dans Enthought, il était habituel que l'intrigue apparaisse dans une fenêtre séparée avec des boutons de zoom, de retour et d'avance. Existe-t-il un moyen d'obtenir le même résultat dans Spyder?

13
Kurt Peek

Sélectionnez dans le menu Tools > Preferences, puis IPython console dans la liste des catégories à gauche, puis l'onglet Graphics en haut, et changez le Graphics backend de Inline à par exemple Qt.
Pour moi cependant, les chiffres apparaissent toujours en arrière-plan.
(J'utilise Spyder 3.0.0dev fourni avec WinPython 3.4.)

36
Norman

Même si c'est une vieille question, ma solution au même problème sans utiliser l'interface graphique.

Tracer uniquement dans la console:

%matplotlib inline 
plt.plot([1, 2, 3, 4])
plt.ylabel('some numbers')

Pour revenir au tracé à l'extérieur de la console:

%matplotlib qt5
plt.plot([1, 2, 3, 4])
plt.ylabel('some numbers')

Il n'était pas nécessaire de redémarrer mon spyder ou kernal. Informations sur la session:

spyder 3.3.2
python 3.6.8
windows 10. 
2
DJV

Et n'oubliez pas de redémarrer le noyau et c'est parti.

1
jmir