Skip to content

Latest commit

 

History

History

tutorials

Drake Tutorials

This provides more in-depth documentation on top of the Drake Documentation's Tutorials section.

Running the Tutorials Locally

To run the tutorials locally, you should ensure that you have Drake available, either via Bazel or via binary packages.

To run the notebooks using Bazel, please refer to the Bazel-Jupyter README. For example:

bazel run //tutorials:mathematical_program

Running and Viewing the Notebooks Online

The notebooks in this folder can be run and quickly viewed online using Binder and nbviewer.

To run or quickly view them from the Drake nightly-release-binder branch on GitHub:

Binder nbviewer

Since Binder uses the robotlocomotion/drake:latest image on Docker Hub that is published once a day from the nightly-release-binder branch, it may be missing features used by notebooks on master. These will be available the next day when the nightly-release-binder branch is automatically updated.

If you are looking to browse among the notebooks with minimal wait time, nbviewer is highly recommended, as you can also launch Binder directly from nbviewer using the button at the top-right. GitHub's interface lets you render notebooks, but there may be a significant delay, it tends to obfuscate links with its rendering server (render.githubusercontent.com) such that they are unusable, and does not provide simple anchors for headings. Binder lets you browse notebooks too, but you must wait for about 10-20s for it to provision a kernel and let you see the notebook.

Warning: meshcat-visualizer is not supported by Binder since port 7000 is not exposed, so tutorials that use meshcat.Visualizer.jupyter_cell() will not display correctly on Binder.

For Developers

When you add a notebook, please make the first cell be a Markdown cell with the tutorial's title and the following preamble:

For instructions on how to run these tutorial notebooks, please see the
[README](https://github.com/RobotLocomotion/drake/blob/nightly-release/tutorials/README.md).

For the pull request that adds the notebook(s), please include a nbviewer link to the directory on your fork and branch, e.g., https://nbviewer.jupyter.org/github/{user}/drake/blob/{branch}/tutorials/

If appropriate, add a Binder link to the notebook (in the nightly-release-binder branch) in the relevant documentation in /doc, e.g., https://mybinder.org/v2/gh/RobotLocomotion/drake/nightly-release-binder?filepath=tutorials/{notebook}.ipynb