Skip to content

Latest commit

 

History

History
174 lines (121 loc) · 4.44 KB

hiding.md

File metadata and controls

174 lines (121 loc) · 4.44 KB
file_format kernelspec
mystnb
name
python3

Hide cell contents

You can use Jupyter Notebook cell tags to control some of the behavior of the rendered notebook.1 If you are using cell tags for the first time, you can read more about them in this tutorial https://jupyterbook.org/en/stable/content/metadata.html#add-metadata-to-notebooks

(use/hiding/code)=

Hide code cells

You can use cell tags to control the content hidden with code cells at the cell level. Add the following tags to a cell's metadata to control what to hide in code cells:

  • hide-input tag to hide the cell inputs
  • hide-output to hide the cell outputs
  • hide-cell to hide the entire cell

For example, we'll show cells with each below.

:tags: [remove-cell]

import matplotlib.pyplot as plt
import numpy as np
data = np.random.rand(2, 100) * 100

Here is a cell with a hide-input tag.

:tags: [hide-input]

# This cell has a hide-input tag
fig, ax = plt.subplots()
points =ax.scatter(*data, c=data[0], s=data[0])

Here's a cell with a hide-output tag:

:tags: [hide-output]

# This cell has a hide-output tag
fig, ax = plt.subplots()
points =ax.scatter(*data, c=data[0], s=data[0])

Here's a cell with both hide-input and hide-output tags:

:tags: [hide-input, hide-output]

# This cell has a hide-output tag
fig, ax = plt.subplots()
points =ax.scatter(*data, c=data[0], s=data[0])

Here's a cell with a hide-cell tag:

:tags: [hide-cell]

# This cell has a hide-cell tag
fig, ax = plt.subplots()
points =ax.scatter(*data, c=data[0], s=data[0])

Finally, a cell with both remove-input (see below) and hide-output tags:

:tags: [remove-input, hide-output]

fig, ax = plt.subplots()
points = ax.scatter(*data, c=data[0], s=data[0])

You can control the hide/show prompts by using the code_prompt_show and code_prompt_hide configuration options. The optional {type} placeholder will be replaced with content, source, or outputs, depending on the hide tag. See the {ref}config/intro section for more details.

```{code-cell} ipython3
:tags: [hide-cell]
:mystnb:
:  code_prompt_show: "My show prompt for {type}"
:  code_prompt_hide: "My hide prompt for {type}"

print("hallo world")
```
:tags: [hide-cell]
:mystnb:
:  code_prompt_show: "My show prompt for {type}"
:  code_prompt_hide: "My hide prompt for {type}"

print("hallo world")

(use/hiding/markdown)=

Hide markdown cells

You cannot hide an entire markdown cell, but you can hide sections of markdown content by using roles and directives.

For information on how to hide / toggle markdown content in Sphinx, see either the sphinx-togglebutton documentation or the sphinx-design dropdowns documentation.

(use/removing)=

Remove parts of cells

Sometimes, you want to entirely remove parts of a cell so that it doesn't make it into the output at all.

To do this at the global level, use the nb_remove_code_source or nb_remove_code_outputs configuration options, or at a per-file level, e.g.

---
mystnb:
  remove_code_source: true
  remove_code_outputs: true
---

See the configuration section for more details.

At a per-cell level you can use the same tag pattern described above, but with the word remove_ instead of hide_. Use the following tags:

  • remove-input tag to remove the cell inputs
  • remove-output to remove the cell outputs
  • remove-cell to remove the entire cell

+++

Here is a cell with a remove-input tag. The inputs will not make it into the page at all.

:tags: [remove-input]

fig, ax = plt.subplots()
points =ax.scatter(*data, c=data[0], s=data[0])

Here's a cell with a remove-output tag:

:tags: [remove-output]

fig, ax = plt.subplots()
points = ax.scatter(*data, c=data[0], s=data[0])

And the following cell has a remove-cell tag (there should be nothing below, since the cell will be gone).

:tags: [remove-cell]

fig, ax = plt.subplots()
points = ax.scatter(*data, c=data[0], s=data[0])

Footnotes

  1. This notebook can be downloaded as {nb-download}hiding.ipynb and {download}hiding.md