matplotlib méthode show() n'ouvre pas de fenêtre
Je suis sur un mac et quand je fais la suite avec matplotlib:
import matplotlib.pyplot as plt
import matplotlib.mlab as mlab
import pylab as P
...
plt.plot(x,y)
plt.show() <-- nothing happens
plt.savefig('figure.png') <-- works fine
Donc, plt.show
ne pas ouvrir une fenêtre ou de quoi que ce soit alors plt.savefig
fonctionne très bien.
Quel pourrait être le problème?
le titre dit
Ah, désolé, j'ai fait une erreur dans mon code de citation. Juste corrigé
Vous êtes toujours en disant: "Alors, plt.l'intrigue n'est pas d'ouvrir une fenêtre". Mais vous voulez dire "afficher()", droit?
Oui bon, je veux dire plt.show()
show()
ne fonctionnent pas. des questions, dit .plot
ne fonctionnent pas. Qui est-il? plt.show()
est le mode normal d'ouvrir la figure.Ah, désolé, j'ai fait une erreur dans mon code de citation. Juste corrigé
Vous êtes toujours en disant: "Alors, plt.l'intrigue n'est pas d'ouvrir une fenêtre". Mais vous voulez dire "afficher()", droit?
Oui bon, je veux dire plt.show()
OriginalL'auteur toom | 2014-02-17
Vous devez vous connecter pour publier un commentaire.
Pyplot n'apparaît une figure de la fenêtre, si
C'est le cas si vous:
plt.ion()
dans votre script, oumatplotlib.interactive(True)
, ou--pylab
option en ligne de commande.Lorsque le mode interactif est éteint, vous avez généralement à appeler
plt.show()
de faire explicitement la figure de la fenêtre pop-up. C'est parce que nous voulons souvent appel parcelle plusieurs fois afin d'en tirer plusieurs choses avant de l'affichage de la figure (qui est un appel bloquant).Edit (après la question a été modifié):
L'une des raisons pour
plt.show()
pas éclater une figure de la fenêtre, c'est que vous n'avez pas activé interactif backend. Vérifiez la sortie de laplt.get_backend()
- si elle renvoie'agg'
, par exemple, vous avez un non-interactive backend.Si c'est votre problème, vous pouvez ajouter des lignes comme
Au début de votre script pour spécifier le backend. Ce doit être placé avant tout autre matplotlib liées aux importations.
De faire un tel changement permanent, vous pouvez spécifier un autre backend par défaut en modifiant votre matplotlib rcfile. L'emplacement de ce fichier est trouvé par appel
matplotlib.matplotlib_fname()
.show()
ne pas ouvrir une fenêtre. On dirait qu'il ne s'attend pas àplot()
d'en ouvrir un.Bien qu'il. Merci!
OriginalL'auteur wim