Extras: Line Magics in Jupyter. We mentioned magic commands earlier when we used%matplotlib inline to make Matplotlib charts render right in our notebook. There are many other magics we can use, too. How to Use Magics in Jupyter. A good first step is to open a Jupyter Notebook, type%lsmagic into a cell, and run the cell. This will output a. Jupyter Notebook Cheat Sheet Jupyter IPython Notebook, Here are some of the commonly used Magic commands in jupyter Notebook. Statement, Explanation, Example.%magic, Comprehensively lists The text of the quick referance sheets comes from the IPython%quickref magic command. In this post, you learned about some of the quick commands (Cheat sheet) which you could use for your reference while working with JupyterLab or Jupyter Notebook. Please feel free to suggest other commands that you found to be useful which are not listed above.
Section author: Robert Nikutta <nikutta@noao.edu>
- Basic notebook usage
- Troubleshooting
Since October 2020 JupyterLab is the default notebook interface at Astro Data Lab. However, the classiceJupyter Notebook interface is still available if you need it, and thispage refers to that classic interface.
To switch from JupyterLab to Jupyter Notebook, click in the Menu on Help-->LaunchClassicNotebook
It will open in a separate browser tab.
A very convenient way to do data science is interactively in yourbrowser, for instance through Jupyter notebooks.
Jupyter notebooks are self-contained programs (for Data Lab they arewritten in Python), which can be loaded and run right inside yourbrowser. This is very convenient, as you can use the entire power ofData Lab and of the Python language, without giving much thought tothe installation and configuration of software.
You can recognize Python notebooks by their file name suffix.ipynb, i.e. my_first_notebook.ipynb. This file stores all theinput commands that you use in the notebook, as well as the output thatthese commands generate (for instance, tables and graphs).
Data Lab was built from the start with Python notebooks in mind, andprovides a containerized notebook server for registered users, as well as a more restrictedpublic notebook server (if youwant to try it out before signing up).
There are three ways of using Data Lab through a Jupyter notebook:
- Data Lab’s public notebook server
- No user account required
- Your work will only persist for the duration of the session. Download the notebook if you want to preserve it.
- No virtual storage allocation
- Access is limited to some databases
- Data Lab’s registered users notebook server
- User account registrationrequired
- Saved notebooks will persist as long as you want to keep them
- Your account comes with a generous allocation of virtual storagespace. You can use it to store query results, upload/downloadfiles to/from, share files with collaborators, perform deeperanalysis on data, etc.
- Access to all database holdings at Data Lab
- Run a notebook server on your own computer
- You need to install the Data Lab client and interfaces on your computer
Launch any of these notebook servers (as described in the abovesection):
- Data Lab’s public notebook server: https://datalab.noao.edu/notebooks
- Data Lab’s notebook server for registered users: https://datalab.noao.edu/devbooks
- Launch a notebook server on your own computer: type
jupyternotebookin a terminal; a browser window pops up
Data Lab’s notebook server for registered users (2nd option above)will prompt you for your registered user name and password.
If you don’t have a Data Lab account yet, you can register for oneright away.
In all three cases you should see a notebook “dashboard” that lookssimilar to this:
If you’re using the Data Lab notebook servers (public or registered),the dashboard will be pre-populated with several example notebooks,ranging from simple “getting started” notebooks, through moretechnical “how to” notebooks, to “science example notebooks” thatguide you from a science questions, through writing data queries, todata analysis and visualization.
- The
notebooks/directory has the default set notebooks, as theywere when you first created your account. - The
notebooks-latest/directory is read-only, and contains thedefault set notebooks as of right now. You can get a copy of them easily. - The
vospace/directory is a read-only link to your virtualstorage directory.
You can either load any of the notebooks by navigating through thedirectories and clicking on its name, or create a new notebook to start with a clean slate. You can alsoorganize your notebooks into new sub-directories.
Data Lab’s Jupyter environment comes with a simple terminal emulatorbuilt-in. It is somewhat limited in the commands that it will let youexecute, but is very useful in many cases. To bring up the terminal,click in the Jupyter dashboard on the “New” button (top-right corner),then on “Terminal”:
A new browser tab will open, with the terminal and a friendly andinformative welcome message:

You can use the terminal to get the newest versions of all defaultnotebooks (which may have changed since your notebooks/ directorywas first created.
A built-in shell function getlatest does the work. To get thelatest default notebooks, simply type
This copies the content of notebooks-latest/ to a new directorynamed with the current date and time.
You can also provide an explicit target directory name:
The target directory will be created if it doesn’t existyet. Otherwise, for every file that is already present in the targetdirectory, you will be asked whether you wish to overwrite it.
Many of the notebook functions can be accessed through quick andconvenient keyboard shortcuts. These are available when a notebook isloaded and/or edited (see below). Most shortcuts are invoked bypressing the ESC key (release it after pressing), which enters thecommand mode of the notebook, followed by one or two additionalkeys, which are pressed simultaneously or in sequence (releasing theprevious key before pressing the next one), depending on the functionyou wish to invoke.
A very useful keyboard shortcut combination is ESC,h (i.e. pressthe ESC key, release it, then press the h key), which bringsup a window with all major keyboard shortcuts… how convenient!
If you want to load a notebook that is visible in the dashboard,simply click on its name. A new browser tab will open and the notebookloaded.
If your notebook file is located under one or several sub-directoriesin the dashboard, simply click your way through to it by traversingthe directories in the dashboard view.
You cannot access .ipynb files that are outside (i.e. above) theroot of the directory tree in the dashboard. You can always jumpback by clicking on the “home” icon in the dashboard view:
Upon opening a notebook file, the upper right corner of the new tabwill display status notifications, including (very briefly) a Kernelready status message.
This means that the Python kernel is ready for your input.
To create a new notebook, click on the New button in the upperright corner of the dashboard, and select a Python kernel (herePython3).
A new browser tab will open with an empty notebook awaiting your input:

When you create a new notebook, it’s title will be Untitled(possibly with an auto-incrementing counter appended to it,e.g. Untitled3, etc.).
The title of a notebook also serves as the root of the notebook filename to be saved. It is a good idea to give the notebook a descriptivetitle, e.g. one that helps you recognize later what this notebook wasall about.
To change the notebook title, click on the current title (which is“Untitled”). A small window will pop up:
You can now edit the highlighted text (here Untitled), then click on the OK button to confirm your change
Note the changed title (here Pythagoras). On the next save, thefile name of this notebook will be Pythagoras.ipynb. (The standard extension is automatically forced.)
Commands and text are entered into so-called cells inside a notebook.
Each cell can contain one or more (or many!) lines of input. Thecontent of the cell will be only executed when you explicit tell it todo so (via keyboard shortcut Shift+ENTER).
In the example above we have instructed the notebook to import theData Lab authentication client, under a shortcut name ac. Once theinput was typed in the cell, a Shift+Enter (pressedsimultaneously) executed the content of the cell. The import wasperformed, and a new empty cell appeared beneath the first cell,awaiting new input.
When the execution of a cell does not return immediately, the cell number at the left changes temporarily to [*] during processing - during a long task this might be your only evidence that something is happening.
Each cell can be set to one of several input modes (e.g. code,markdown, etc.). The default is code (meaning valid Pythoncommands). In the example below we switch to markdown which isgood for formatting, headers, descriptive text, etc.
After changing the cell type to markdown we enter a large title(H1 size):

Finally, a Shift+ENTER keyboard shortcut executes this cell aswell, rendering the markdown content:
As before, a new empty cell is created right underneath the renderedone.
You can also use keyboard shortcuts to switch the cell type; e.g., tochange a cell type to markdown, press ESC,m. To change it to code,type ESC,y.
To run all cells in a notebook, one after another, starting at thetop, click on the Cell entry in the menu bar, then on Runall,as shown below:
The entire notebook will be executed.
Your notebook is automatically saved after a set period of time(typically 120 seconds). If you wish to save the file manually at anygiven time, either type ESC,s or click on the Save andCheckpoint icon (left-most icon that looks like a floppy disk).
A notebook .ipynb file also saves all output generated by thenotebook cells. This makes a notebook very portable, and you caneasily share it with others, email it to yourself, etc.
To logout from any of the Data Lab notebook servers, click on the Logout button in the upper-right corner (either from a notebook browser tab, or from the notebookdashboard tab).
The public server does not have a logout option - logout is automatic when the last open window is closed.
Sometimes you may wish to restart a kernel, i.e. restart the Pythonnotebook you are currently running.
One reason for doing so is when you have changed some external .pyfile that your notebook is importing. If you try to import that fileagain, the new changes won’t be picked up (unless you explicitlyreload that file). Another common reason to restart a runningkernel is when there is some technical hiccup with the notebook; arestart of the kernel can help resolve the issues.
To restart a kernel, either type ESC,0,0 (Escape,zero,zero keys),or click in the menu bar on Kernel, then on Restart:
Whether you used the mouse or the keyboard shortcut, a confirmationdialog will pop up:
Jupyter Notebook Magics
Confirm your wish to indeed restart the notebook kernel by eitherclicking on the Restart button, or by hitting the ENTER key.
The kernel will be restarted, and you can re-run all relevant cells init. (You must re-run the cells, since a kernel restart forgets thecurrent state of memory variables).
If you experience technical difficulties in executing your notebook,and you have already tried to remedy them by restarting thekernel (to no effect), then the problem might beon the Data Lab notebook server side.
if you are logged in as a registered user, then you can then try to restart the notebook server. For this, click onthe ControlPanel button in the upper-right corner (either from anotebook browser tab, or from the dashboard tab):
You should see two buttons. Click on the red one saying StopMyServer:
Wait a few seconds until the red button disappears. The notebookserver has been shut down, and you can restart it my clicking on theremaining green button MyServer:
Jupyter Notebook Command Mode
On the public server, quitting all windows has the effect of restarting the server - at the price of losing unsaved work!
