web-dev-qa-db-fra.com

Comment définir la taille par défaut de la figure matplotlib dans ipython notebook?

J'utilise "$ ipython notebook --pylab inline" pour démarrer le bloc-notes ipython. La taille de la figure affichée est trop grande pour moi et je dois l’ajuster manuellement. Comment définir la taille par défaut pour le chiffre affiché dans la cellule?

87
bigbug

Je crois que le travail suivant dans les versions 0.11 et supérieures. Pour vérifier la version:

$ ipython --version

Il peut être intéressant d’ajouter cette information à votre question.

Solution:

Vous devez trouver le fichier ipython_notebook_config.py. En fonction de votre processus d'installation, cela devrait être quelque part comme

.config/ipython/profile_default/ipython_notebook_config.py

.config est dans votre répertoire personnel.

Une fois que vous avez localisé ce fichier, trouvez les lignes suivantes

# Subset of matplotlib rcParams that should be different for the inline backend.
# c.InlineBackend.rc = {'font.size': 10, 'figure.figsize': (6.0, 4.0), 'figure.facecolor': 'white', 'savefig.dpi': 72, 'figure.subplot.bottom': 0.125, 'figure.edgecolor': 'white'}

Décommentez cette ligne c.InlineBack... et définissez votre valeur par défaut dans la deuxième entrée du dictionnaire.

Notez que cela pourrait être fait dans un script python (et donc de manière interactive dans IPython) en utilisant

pylab.rcParams['figure.figsize'] = (10.0, 8.0)
117
Greg

Travaillé a aimé un charme pour moi:

matplotlib.rcParams['figure.figsize'] = (20.0, 10.0)
96
Subspacian

Si vous ne possédez pas ce fichier ipython_notebook_config.py, vous pouvez en créer un en suivant le fichier Lisezmoi et en tapant

ipython profile create
17
anmol

Juste pour être complet, cela fonctionne aussi

from IPython.core.pylabtools import figsize
figsize(14, 7)

C'est un wrapper autour de la solution rcParams

13
gsmafra

Dans iPython 3.0.0, le backend en ligne doit être configuré dans ipython_kernel_config.py. Vous devez ajouter manuellement le c.InlineBackend.rc... line (comme indiqué dans la réponse de Greg ). Cela affectera à la fois le backend en ligne dans la console Qt et le notebook.

8
Puggie