[PYTHON] A very convenient way to give a presentation on Jupyter Notebook

How to easily turn a Jupyter Notebook into a presentation slide

I often see people making programming presentations using Jupyter Notebook. In many cases, it seems that the notebook is used as it is and the presentation is made by scrolling down the screen little by little. After executing the program, move the browser screen down a little and execute the program again. I also do it well. Jupyter Notebook can be explained by executing the program sequentially and showing the result, so it is easy to understand if you talk in this flow, but this method is unexpectedly inconvenient and there are many cases where you get confused during the presentation. I think there are two causes.

  1. The characters of the program are small
  2. It is difficult to lower the browser to a proper position, and the screen edge is cut off.

When you actually try it, it looks like this figure.

1.png

It is unexpectedly inconvenient for both the presenting side and the viewing side. Good news for those who are in trouble. In fact, Jupyter Notebook has a better presentation tool ** "RISE" **.

What is RISE

RISE is an extension of Jupyter Notebook. It is open to the public for free. https://github.com/damianavila/RISE

By using RISE, you can convert your Notebook into a presentation slide and show it on your web browser. The image looks like this.

2.png

Characters such as programs are enlarged to a size that is easy to read. Images and data that extend beyond the browser can be scrolled internally, so the screen edges will not be cut off.

Let's install

The installation method is easy. In the environment where Jupyter Notebook is installed, execute the following.

pip install RISE
jupyter-nbextension install rise --py --sys-prefix
jupyter-nbextension enable rise --py --sys-prefix

It takes only 3 lines and takes about 10 seconds.

let's try it

After installing and opening Jupyter Notebook, the following button is added in the upper right corner.

3.PNG

Press this button to slide your Notebook in your browser.

The screen configuration is very simple.

6.png

You can also move the screen with "←" and "→".

How to make a presentation slide

RISE classifies the display method in the presentation according to the cell type of Jupyter Notebook. The cell type can be changed by selecting "View"> "Cell Toolbar"> "Slideshow" from the menu. If you select "Slideshow", you will be able to select "Slide Type" in the upper right corner of the cell.

4.PNG

The slide types that can be selected are as follows.

--"-": Display the cell as it is --Slide: Makes a cell into one slide --Sub-slide: Make it a sub-slide of the previous slide --Fragment: Displayed below the front slide (screen edge is cut off) --Skip: Do not display --Notes: Treated as notes

Basically, you can use Slide. I think the other types can be used for slightly elaborate slide movements, but I don't think they are very convenient (if you know how to use them, please let me know).

As you know, Jupyter Notebook allows you to write words in Markdown format. If you write text and images in Markdown, you can also make slides like PowerPoint.

5.png

Recommended points

Finally, I would like to recommend RISE. RISE allows you to run programs during your presentation. This allows for interactive and engaging presentations.

The execution method is to press "SHIFT + ENTER" at the same time. It is the same as the program execution method in Jupyter Notebook.

7.PNG

8.png

Finally

We have introduced the Jupyter Notebook presentation tool ** "RISE" **, which can be easily installed and used to achieve tremendous effects. This is goodbye to the days when scrolling doesn't go well during a Notebook presentation.

[2017/05/28 postscript] I gave a presentation to a customer with Jupyter Notebook + RISE at a company event the other day, and it went smoothly. There was no need to transfer the program to PowerPoint, and it was very convenient from presentation creation to implementation.

Recommended Posts

A very convenient way to give a presentation on Jupyter Notebook
The usual way to add a Kernel with Jupyter Notebook
A simple way to launch Jupyter Notebook / Lab and set a password
I wanted to create a smart presentation with Jupyter Notebook + nbpresent
Make Jupyter Notebook a service on CentOS
Run Jupyter notebook on a remote server
How to set up a jupyter notebook on ssh destination (AWS EC2)
Simply display a line graph on Jupyter Notebook
Build a PYNQ environment on Ultra96 V2 and log in to Jupyter Notebook
How to view progress bar on Jupyter Notebook to see progress
Introduced Jupyter Notebook to CentOS 7
How to import NoteBook as a module in Jupyter (IPython)
High charts on Jupyter notebook
View PDF on Jupyter Notebook
I want to use a virtual environment with jupyter notebook!
Unable to display tensorboard in jupyter notebook on docker (solved)
How to import NoteBook as a module in Jupyter (IPython)
Try clustering with a mixed Gaussian model on a Jupyter Notebook
A note when I can't open Jupyter Notebook on Windows
Run Jupyter Notebook on windows
A relatively easy way to insert a NEologd dictionary on Windows-System Dictionary
How to use Jupyter Notebook
Building a Python development environment on Windows -From installing Anaconda to linking Atom and Jupyter Notebook-
How to quickly create a machine learning environment using Jupyter Notebook on macOS Sierra with anaconda
Day 65 I installed matplotlib to draw graphs on my Jupyter notebook.
How to batch start a python program created with Jupyter notebook
Install Anaconda on Mac and upload Jupyter (IPython) notebook to Anaconda Cloud
Formatting with autopep8 on Jupyter notebook
Post a Jupyter Notebook as a blog post
Make a sound with Jupyter notebook
Convenient analysis with Pandas + Jupyter notebook
Easy to use Jupyter notebook (Python3.5)
Try running Jupyter Notebook on Mac
How to fix a bug that jupyter notebook does not start automatically
I want to display an image on Jupyter Notebook using OpenCV (mac)
[Python] It was very convenient to use a Python class for a ROS program.
It is convenient to use Layers when putting a library on Lambda
Markdown to get Jupyter notebook results to Qiita
Execute a script from Jupyter to process
Try to make a kernel of Jupyter
Give a title to the ipywidgets tab
I want to blog with Jupyter Notebook
Try SVM with scikit-learn on Jupyter Notebook
Start jupyter notebook on GPU server (remote server)
How to execute commands in jupyter notebook
Clone the github repository on jupyter notebook
How to use jupyter notebook with ABCI
GPU check of PC on jupyter notebook
Display histogram / scatter plot on Jupyter Notebook
Build jupyter notebook on remote server (CentOS)
Jupyter Notebook Basics of how to use
Use vim keybindings on Docker-launched Jupyter Notebook
How to test on a Django-authenticated page
A way to understand Python duck typing
How to use Jupyter notebook [Super Basic]
To output a value even in the middle of a cell with Jupyter Notebook
LINUX: How to make arrow keys correspond to 2,4,6,8 on a notebook without a numeric keypad
A memorandum of how to execute the! Sudo magic command in Jupyter Notebook
How to install Fast.ai on Alibaba Cloud GPU and run it on Jupyter notebook
Install and set Jupyter Notebook to create a study note creation environment [Mac]
What to do if NotADirectoryError: [Errno 20] Not a directory:'xdg-settings' appears in jupyter notebook