Les graphiques Matplotlib ne sont pas affichés lors de l'exécution du fichier à partir du terminal bash
Parcelles sont normalement quand je lance des fichiers à partir de la ipython shell ou d'un ipython notebook, mais ils n'apparaissent pas quand je lance le fichier à partir d'un terminal bash -- tout le reste fonctionne bien quand est exécuté à partir d'un terminal bash.
Exemple de script python (trial.py):
import matplotlib.pyplot as plt
print 'please, show my graph'
plt.plot([1,2,3], [1,2,3])
plt.show()
C'est ce que j'obtiens (l'intrigue ne s'affiche pas):
[~/Desktop]$ python trial.py
please, show my graph
[~/Desktop]$
Si je ne
import matplotlib
matplotlib.use('TkAgg')
avant de les importer pyplot, puis une fenêtre s'ouvre et se ferme immédiatement quand je le lance depuis le terminal.
J'ai essayé différentes manières d'importer des modules sans succès:
import matplotlib.pyplot as plt
import matplotlib.pylab as plt
from matplotlib import pyplot as plt
from matplotlib import pylab as plt
J'ai le plt.show() dans mon fichier.
Savez-vous comment je peux résoudre ce problème?
Quelques infos sur les versions et l'installation:
Je suis sur un mac OSX 10.11.3.
In [61]: print matplotlib.__file__
/usr/local/lib/python2.7/site-packages/matplotlib/__init__.pyc
In [62]: print matplotlib.__version__
1.4.2
In [64]: print sys.version
2.7.9 (default, Apr 7 2015, 07:58:25)
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.57)]
In [65]: matplotlib.get_backend()
Out[65]: u'MacOSX'
source d'informationauteur drake
Vous devez vous connecter pour publier un commentaire.
Vous devez ajouter
matplotlib.pyplot.show()
dans votre code pour afficher les parcelles en mode non-interactif. Voir les docs à http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.showEDIT:
Après plus d'info de l'OP, le blocage devait être activé explicitement à l'aide de
plt.show(block=True)
.