Wie setze ich die Standardgröße der matplotlib-Figur in ipython notebook?


104

Ich benutze "$ ipython notebook --pylab inline", um das ipython notebook zu starten. Die Größe der Display-Matplotlib-Figur ist zu groß für mich und ich muss sie manuell anpassen. Wie stelle ich die Standardgröße für die in der Zelle angezeigte Figur ein?

Antworten:


123

Ich glaube die folgende Arbeit in Version 0.11 und höher. So überprüfen Sie die Version:

$ ipython --version

Es kann sich lohnen, diese Informationen zu Ihrer Frage hinzuzufügen.

Lösung:

Sie müssen die Datei finden ipython_notebook_config.py. Abhängig von Ihrem Installationsprozess sollte dies irgendwo sein

.config/ipython/profile_default/ipython_notebook_config.py

Wo .configist in Ihrem Home-Verzeichnis.

Sobald Sie diese Datei gefunden haben, finden Sie die folgenden Zeilen

# 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'}

Kommentieren Sie diese Zeile aus c.InlineBack...und definieren Sie Ihre Standardgröße im zweiten Wörterbucheintrag.

Beachten Sie, dass dies in einem Python-Skript (und damit interaktiv in IPython) unter Verwendung von möglich ist

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

6
In ipython 2.0 befindet sich die Konfigurationsdatei in .ipython / profile_default / ipython_notebook_config.py
Fabian Pedregosa

1
Enthält in älteren Versionen von iPython ipython_notebook_config.pynicht die Zeile zum Konfigurieren des Inline-Backends. Da die Konfigurationsdatei beim Aktualisieren von iPython nicht automatisch aktualisiert wird (zumindest unter Windows), müssen Sie sie löschen und eine neue Konfigurationsdatei generieren, indem Sie sie ipython profile createwie von @anmol unten vorgeschlagen ausführen.
Puggie

1
Sie können vorhandene Profile mit finden ipython profile locate.
j08lue

22
Und wenn Sie matplotlib anstelle von pyplot verwenden, lautet der interaktive Befehl matplotlib.rcParams['figure.figsize'] = (10.0, 8.0)
Luke

Ich verwende jupyter 4.1.0-6 mit python-ipykernel 4.5.2-3 und ipython 5.3.0-1 (alle auf Arch) und habe keine Datei mit dem Titel ipython_notebook_config.pyunter meinem ~. Irgendeine Idee, wie sich die Dinge in den neuesten Versionen geändert haben könnten?
Pastafarianist

111

Arbeitete gefiel mir ein Zauber:

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

17
Ich weiß nicht, wie idiomatisch das ist, aber ich habe dies für mein Jupyter-Notizbuch angepasst, damit es funktioniert:import matplotlib.pyplot as plt %matplotlib inline plt.rcParams['figure.figsize'] = (20.0, 10.0)
Brycemcd

8
Es gibt auchplt.rc('figure', figsize=(20.0, 10.0))
Joelostblom

2
Ganz seltsam, aber nach einiger Update muss ich Split %matplotlib inlineund plt.rc(...)in verschiedenen Zellen für die letztere an die Arbeit. Gleiches gilt fürmatplotlib.rcParams[...]
Uranix

3
%matplotlib inline
Stellen Sie

17

Wenn Sie diese Datei ipython_notebook_config.py nicht haben, können Sie eine erstellen, indem Sie der Readme-Datei folgen und sie eingeben

ipython profile create

16

Der Vollständigkeit halber funktioniert dies auch

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

Es ist eine Hülle um die rcParamsLösung


Wichtig für ein großes Notizbuch mit mehreren Plots und funktioniert wie ein Zauber
CATALUNA84

8

In iPython 3.0.0 muss das Inline-Backend in konfiguriert werden ipython_kernel_config.py. Sie müssen die c.InlineBackend.rcZeile ... manuell hinzufügen (wie in Gregs Antwort erwähnt). Dies wirkt sich sowohl auf das Inline-Backend in der Qt-Konsole als auch auf das Notebook aus.


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.