Kurs
Matplotlib ist eine leistungsstarke Bibliothek für Visualisierungen in Python. In Jupyter Notebooks, DataLab oder anderen kompatiblen Umgebungen kannst du Matplotlib inline verwenden, um Diagramme direkt im Notebook anzuzeigen – ohne zusätzliche Fenster. Mehr zu den Möglichkeiten von Matplotlib findest du in diesem Tutorial zur Matplotlib-Bibliothek.
Was macht Matplotlib Inline?
Matplotlib inline ist ein Backend-Befehl in Jupyter Notebooks, der Matplotlib-Grafiken direkt unterhalb der Codezellen rendert. Führst du Code aus, der Matplotlib-Plots erzeugt, werden die Diagramme inline im Notebook angezeigt, statt in einem separaten Fenster oder Ausgabebereich.
Dieses Inline-Rendering ist besonders praktisch, wenn du im Notebook Varianten eines Plots iterativ erstellst. Da die Grafik direkt unter dem erzeugenden Code erscheint, siehst du sofort, wie sich deine Änderungen auswirken. Das funktioniert natürlich auch mit Standard-Features wie Titel, Achsenbeschriftungen, Legende oder Farbgebung.
Achtung: In manchen Fällen kann es zu Memory-Leaks kommen, also Fehlern, bei denen Speicher zwischen Zeichenereignissen nicht freigegeben wird und eine Figur nach Änderungen falsch dargestellt wird. Wenn dir das auffällt, nutze die Methoden .clf() und .close(), um den Speicher des vorherigen Plots zu leeren, bevor du neu zeichnest.
Wichtiger Hinweis: In aktuellen Versionen von Jupyter Notebook ist Matplotlib inline nicht zwingend erforderlich, da Plots automatisch angezeigt werden. Es ist dennoch hilfreich – vor allem beim Teilen von Code. Wenn du also die neueste Version von Jupyter Notebook nutzt oder DataLab verwendest und keinen Code teilen musst, kannst du dieses Tutorial überspringen und direkt mit Matplotlib loslegen.
Matplotlib-inline: Syntax und Anwendung mit Beispielen
Um den Matplotlib-inline-Modus in einem Jupyter Notebook zu aktivieren, füge einfach am Anfang deines Notebooks folgenden Befehl ein:
import matplotlib
%matplotlib inline
Damit weist du Jupyter an, Matplotlib-Diagramme direkt im Notebook zu rendern, statt ein neues Fenster zu öffnen oder externe Dateien zu speichern. Ist der Modus aktiviert, kannst du wie gewohnt mit Matplotlib Plots erstellen und anzeigen.

Ein Beispiel für %matplotlib inline in einem Jupyter Notebook
Wie bereits erwähnt, benötigen aktuelle Versionen von Jupyter Notebooks & IDEs wie DataLab den Zusatz %matplotlib inline nicht, um Plots in derselben Zelle zu sehen. Ich füge diese eine Zeile dennoch gerne oben in meine Skripte ein – auch in solchen IDEs. So lässt sich Code leichter zwischen Systemen und Teammitgliedern austauschen, und das Risiko unerwarteter Fehler sinkt, falls sich das Verhalten der IDE ändert.
Eine interaktive Alternative: %matplotlib notebook
Wenn du Interaktivität in deinen Inline-Plots möchtest, probiere den Backend-Befehl %matplotlib notebook. Die Plots bleiben im Notebook sichtbar und bieten zusätzlich Interaktion wie Zoomen, Schwenken und Dateninspektion. Auf einigen Systemen kann sich dieser Magic-Befehl allerdings zickig verhalten. Wenn es Probleme gibt, empfehle ich plotly.io als interaktive Inline-Alternative.

Ein Beispiel für %matplotlib notebook in einem Jupyter Notebook
%matplotlib inline mit anderen Plot-Bibliotheken kombinieren
Der Befehl %matplotlib inline ist nicht auf Matplotlib-Plots beschränkt. Er lässt sich problemlos mit anderen Bibliotheken wie seaborn und plotly kombinieren und erweitert so die Vielfalt an Diagrammtypen, die du direkt im Notebook erstellen kannst.
In Kombination mit der seaborn-Bibliothek erhältst du deutlich mehr Möglichkeiten zur Anpassung deiner Plots.

Ein Beispiel für %matplotlib inline mit seaborn in einem Jupyter Notebook
Zusammen mit plotly ermöglicht der Befehl Interaktivität wie Zoomen und Schwenken.

Ein Beispiel für %matplotlib inline mit plotly in einem Jupyter Notebook
Fazit in Kürze: Nutze den Befehl %matplotlib inline, um Inline-Plots in Jupyter Notebooks zu aktivieren. In Kombination mit anderen Plot-Bibliotheken entstehen leistungsstarke Visualisierungen.
Best Practices für %matplotlib inline
Beim Einsatz von %matplotlib inline helfen dir diese Best Practices:
- Setze den Matplotlib-inline-Befehl an den Anfang des Notebooks, damit Plots durchgängig konsistent angezeigt werden.
- Importiere die Matplotlib-Bibliothek, bevor du den Befehl aufrufst.
- Wenn Plots im Notebook sichtbar sein sollen, nutze Matplotlib inline – auch wenn deine IDE das standardmäßig tut. Das sorgt für reibungsloses Arbeiten, besonders wenn Kolleginnen und Kollegen deinen Code verwenden.
- Lösche alte Plots, bevor du neue generierst, um Memory-Leaks zu vermeiden.
- Wähle die Plot-Art, die zu deinen Daten und der gewünschten Aussage passt.
Fazit
Der Matplotlib-inline-Modus ist ein bequemes Feature, das die Arbeit mit Matplotlib in Jupyter Notebooks deutlich verbessert. Durch das Inline-Rendering werden Erstellen, Erkunden und Vermitteln von Erkenntnissen aus Daten deutlich effizienter.
Wenn du mehr über Datenvisualisierung lernen möchtest, schau dir Introduction to Data Visualizations with Matplotlib an. Erzeuge fortgeschrittene Plots und Visualisierungen in diesem Seaborn-Kurs und in diesem Tutorial zu Histogrammen mit Matplotlib.
Ich bin promoviert und habe 13 Jahre Erfahrung in der Arbeit mit Daten in der biologischen Forschung. Ich entwickle Software in verschiedenen Programmiersprachen, darunter Python, MATLAB und R. Meine Leidenschaft ist es, meine Liebe zum Lernen mit der Welt zu teilen.


