107 votes

Dans le notebook Ipython / Jupyter, Pandas n'affiche pas le graphique que j'essaie de tracer.

J'essaie de tracer des données à l'aide de pandas dans Ipython Notebook, et bien qu'il me donne l'objet, il ne trace pas réellement le graphique lui-même. Cela ressemble donc à ceci :

In [7]:

pledge.Amount.plot()

Out[7]:

<matplotlib.axes.AxesSubplot at 0x9397c6c>

Le graphique devrait suivre après cela, mais il n'apparaît tout simplement pas. J'ai importé matplotlib, ce n'est donc pas le problème. Y a-t-il un autre module que je dois importer ?

0 votes

J'ai été capable de tracer des choses il y a quelques jours, en suivant une vidéo, mais maintenant je n'arrive pas à tracer quoi que ce soit. Et il semble que je fasse la même chose que la documentation. pandas.pydata.org/pandas-docs/stable/visualisation.html Je me suis dit que quelque chose clochait dans mon système ou qu'un module n'était pas importé.

0 votes

@chrisfs il y a une réponse correcte plus récente. Celle que vous avez choisie il y a quelques années est maintenant incorrecte. Pourriez-vous envisager de modifier la réponse que vous avez acceptée ? Merci.

182voto

Tal Yarkoni Points 302

Notez que --pylab est obsolète et a été supprimé des nouvelles versions d'IPython. La méthode recommandée pour activer le traçage en ligne dans le Notebook d'IPython est maintenant d'exécuter :

%matplotlib inline
import matplotlib.pyplot as plt

Voir ce poste de la liste de diffusion ipython-dev pour plus de détails.

2 votes

Très bien. Après avoir utilisé %matplotlib inline mes tentatives de traçage ont abouti à une image visible en ligne, sympa. En fait, l'importation n'est pas nécessaire si le tracé est la méthode d'un objet déjà existant comme dans OP.

2 votes

C'est la nouvelle réponse correcte. Plus d'informations dans cet article de blog .

0 votes

@Tal Yarkoni J'ai ajouté la première ligne de votre réponse pour que cela fonctionne. merci~~ !

50voto

chrisfs Points 682

Edit:Pylab a été déprécié s'il vous plaît voir la réponse acceptée actuelle

Ok, il semble que la réponse soit de lancer ipython notebook avec --pylab=inline. ainsi ipython notebook --pylab=inline Cela fait faire ce que j'ai vu plus tôt et ce que je voulais qu'il fasse. Désolé pour la question initiale vague.

26 votes

Oui, c'est ce dont vous avez besoin. Vous pouvez également exécuter %pylab inline à l'intérieur d'un ordinateur portable pour activer le mode pylab.

3 votes

Notez qu'il n'est pas nécessaire d'être en mode inline pour que pandas fonctionne. Je suis heureux de n'utiliser que ipython notebook --pylab avec pandas pour avoir le tracé dans une fenêtre supplémentaire, si c'est ce que quelqu'un veut.

26voto

eumiro Points 56644

Avec votre import matplotlib.pyplot as plt ajoutez simplement

plt.show()

et il montrera toutes les parcelles stockées.

1 votes

Ok, ça aide. Je pensais qu'Ipython ferait automatiquement des tracés en ligne. La documentation de pandas ne montre pas non plus comment faire plt.show(). pandas.pydata.org/pandas-docs/stable/visualisation.html

4voto

Ankanna Points 527

Simple après avoir importé le matplotlib vous avez exécuté une magie si vous avez démarré l'ipython comme ceci

ipython notebook 

%matplotlib inline 

exécutez cette commande, tout s'affichera parfaitement

1voto

pigletfly Points 163

Démarrer ipython avec ipython notebook --pylab inline puis le graphique s'affichera en ligne.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X