To use Jupyter lab (version 3 or higher) execute one of these commands:
pip install jupyterlab-vpython
conda install -c conda-forge jupyterlab-vpython
To uninstall Jupyter lab, execute one of these commands (depending on whether you installed with pip or conda):
pip uninstall jupyterlab-vpython
conda uninstall jupyterlab-vpython
There are two ways to start a Jupyter notebook or lab. In a terminal, execute "jupyter notebook" or "jupyter lab". Or (depending on what operating system you're using), doubleclick the icon "Jupyter Notebook" or "JupyterLab" that is shown as one of the Anaconda-related tools.
If you have a recent release of the Mac operating system, to start the Jupyter notebook you may need to execute this:
jupyter notebook --browser=Chrome
This short program will display a white box on a black background:
from vpython import *
box()
Either with or without a Jupyter notebook or lab, "from vpython import *" also imports all math functions, clock(), random(), and arange(). This simplifies moving programs between Web VPython and VPython 7.
Click in the first cell (containing the vpython import statement), then click the run icon, the one that is a rightward-facing triangle touching a vertical line. Currently, to re-run a VPython program you need to click the circular arrow icon to "restart the kernel" and then click the red-highlighted button, then click in the first cell, then click the run icon. Some users find it convenient to include in the first cell just these statements:
from vpython import*
scene = canvas()
Then put the rest of the program in later cells. The result is that the 3D display will be shown just under the first cell instead of at the end of the last cell. It also ensures that the vpython module has been fully initialized before continuing. Moreover, you can re-run the program more easily.
There is a suite of demo programs for use with a Jupyter notebook or JupyterLab (zip file).
There is a Binder package of some demo programs, which lets you run Jupyter VPython programs even on computers or mobile devices that do not have Python installed. Here is an explanation of the Binder mechanism. Because the Binder servers are shared among a large number of people, performance can vary a great deal from day to day and from hour to hour.