Defintion „JupyterLab“ Was ist JupyterLab?

Von Gedeon Rauch

Anbieter zum Thema

Jupyter Notebook ist bereits seit Jahren eine praktische Entwicklungsumgebung für Python. Doch die Open Source-Software in die Jahre gekommen – mit JupyterLab steht ein passender Nachfolger vom Jupyter Project bereit.

In das JupytertLab-Beispiel integrierte Funktion zum Plotten eines Lorenz-Attraktors nach dem Lorenzsystem.
In das JupytertLab-Beispiel integrierte Funktion zum Plotten eines Lorenz-Attraktors nach dem Lorenzsystem.
(Bild: Jupyter.org)

Developer, die auf eine Open Source-Lösung für Notebooks als Webanwendung setzen, haben gleich zwei Möglichkeiten vom Jupyter Project: das ältere Jupyter Notebook oder das modernere JupyterLab. Die Stärken von JupyterLab lassen sich dabei auch mit den Stärken von Jupyter Notebook zusammenfassen.

Bei JupyterLab handelt es sich um eine kostenlose, quelloffene Webanwendung, die ganz einfach vom Browser aus genutzt werden kann. Die Kooperation mit anderen Teammitgliedern ist bereits in JupyterLab integriert, kann mit JupyterHub aber noch optimiert und direkt an zentrales Deployment angebunden werden.

JupyterLab funktioniert wie das klassische Notebook mit einer Vielzahl an Programmiersprachen, kommt vor allem bei Python häufig zum Einsatz. Für Datenvisualisierung oder das Testen einzelner Zellen ist JupyterLab zudem bestens ausgelegt, weswegen Lab vor allem in der Datenwissenschaft viel Potential bietet.

Mit JupyterLab lassen sich wie mit anderen Notebooks auch einzelne Zellen oder Zeilen ausführen, zudem kann Code auch beliebig kommentiert werden. Diese Erläuterungen verbessern die Zusammenarbeit und sprechen für die Anbindung an JupyterHub.

Die fünf wichtigsten Unterschiede zwischen JupyterLab und Jupyter Notebook

Um noch einmal deutlich hervorzuheben, was JupyterLab im Vergleich zum älteren Notebook so viel funktionaler macht, lohnt sich ein Blick auf die Unterschiede und Änderungen, die Jupyter Project im Laufe der Jahre vorgenommen hat. Denn mit einem ersten stabilen Release 2018 und einer 1.0-Version 2019 ist Lab die wesentlich modernere Software.

1. Ein optimiertes Layout

Während es in Jupyter Notebook noch gang und gäbe war, zwischen den Tabs zu wechseln, fasst JupyterLab alle wichtigen Fenster mühelos zusammen. Notebooks, Texteditoren, Code Terminals und Directories lassen sich so in einem einzigen Fenster anzeigen (und nach Wunsch anordnen). Dateien können markiert (oder aus der Cloud verlinkt) werden, Code geschrieben und im Notebook notiert werden, ohne je die Ansicht wechseln zu müssen. Vor allem bei komplexeren Projekten und auf größeren Displays eine deutliche Verbesserung der Produktivität des UI.

2. Data-Science-gerechte CSV-Verarbeitung

Jupyter Notebook wurde seit jeher als Tool in der Datenwissenschaft genutzt. Große und komplexe Datensätze und wissenschaftliche Formeln ließen sich im Notebook bestens darstellen, doch CSV-Files wurden als Nur-Text angezeigt. Mit JupyterLab ist das vorbei, die Spreadsheets werden als solche (genau wie in Excel angezeigt). Besser noch: JupyterLab funktioniert auch mit CSVs jenseits einer Million Reihen.

3. Besseres Arbeiten mit dem Notebook

Textzeilen im Notebook an verschiedenen Stellen abgleichen, kommentieren oder editieren, ist ein zeitaufwendiger Prozess. JupyterLab optimiert dieses Prozedere, indem sich mehrere Notebook-Ansichten zeitgleich nebeneinander anzeigen lassen. Anfang und Ende des Notebooks können so gleichzeitig geöffnet werden und jede Änderung wird natürlich in allen offenen Fenstern (live) übernommen. Generell lassen sich viele Interface-Änderungen einfach per Drag-and-Drop anpassen, so dass die Arbeitsoberfläche wesentlich flexibler ist.

4. Schnellerer Zugang zur Code Console

Über die Code Consoles von Notebooks lassen sich Code-Teile bestens prüfen. JupyterLab macht den Übergang vom Notebook zur Console noch einmal einfacher: Entsprechender Text muss nur markiert werden und kann über das Kontextmenü in eine neue Konsole übertragen werden.

5. Markdown mit wenigen Klicks

Um in Jupyter Notebook ein Markdown zu erstellen, müssen die Zellen immer wieder abgespielt werden, um die Syntax auf Korrektheit zu testen. Das ist in JupyterLab nicht mehr der Fall, eine Markdown Preview lässt sich hier sehr simpel erstellen; durch Live Updates sehen Developer zudem sofort, ob die Syntax stimmt.

Die Zukunft von Jupyter Notebook und JupyterLab

User und Teams, die für ihr neues Projekt noch entscheiden, welches Notebook sie nutzen möchten, sollten eher auf JupyterLab statt auf Jupyter Notebook setzen. Der entscheidende Faktor ist hierbei nicht unbedingt das bessere User Interface, sondern vor allem auch die Zukunftsfähigkeit.

JupyterLab kann alles, das auch Jupyter Notebook kann und wird die ältere Webanwendung früher oder später ersetzen. Dass der Einstieg in die Bedienung von Jupyter Notebook aufgrund der geringeren Komplexität leichter fällt, mag stimmen – doch auch JupyterLab bietet viele Vorteile für Programmiererinnen und Programmierer ohne jahrelange Erfahrung.

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu Softwareentwicklung und DevOps

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung

Nur eine Zeile oder ausschließlich hervorgehobenen Text zu testen, funktioniert mit JupyterLab wesentlich einfacher, was beim Aufspüren von Fehlern Zeit ersparen kann. So bietet JupyterLab zwar mehr Komplexität als Jupyter Notebook, aber auch wesentlich mehr Komfort.

Das Team von Jupyter Project schreibt selbst, dass JupyterLab das klassische Notebook ersetzen wird. Zwar wird das Dateiformat beibehalten und so zwischen beiden Webanwendungen konsistente Kompatibilität gewährleistet, doch sollten Anwender*innen sich letztlich selbst fragen, ob sie sich nicht lieber direkt an das Interface und die Funktionalität der aktuellen Software gewöhnen möchten.

(ID:48522059)