Images and Plots
Image blocks let you embed figures, photos, and diagrams directly in your notebook alongside your notes and code. Code blocks automatically capture matplotlib plots and display them inline — write the code, run it, and the figure appears.
Adding images
Section titled “Adding images”Insert an image block using the /image command in a markdown block, or click the + button between blocks and select Image.
You can add images three ways:
- Upload — click Upload images or the + Add Images button to select files from your computer
- Drag and drop — drag image files directly onto the block
- Paste from clipboard — copy an image and paste it (Ctrl+V / Cmd+V) into the block
Supported formats: JPEG, PNG, WebP, and GIF. Files up to 20 MB are accepted and automatically compressed for fast loading.
Arranging images
Section titled “Arranging images”When you add multiple images to a single block, they tile automatically based on their aspect ratios.
- Reposition — drag any image to move it. Alignment guides appear to help you place it precisely.
- Resize — drag the handles on corners or edges to resize. Aspect ratio is preserved.
- Multi-select — Shift+click to select multiple images and move them together.
Replacing and removing images
Section titled “Replacing and removing images”Click the ⋮ menu on an individual image to Replace or Delete it. You can also select an image and press Delete or Backspace.
Deleted images are recoverable for 7 days before permanent removal.
Generating plots from code
Section titled “Generating plots from code”Write Python code in a code block and any matplotlib figures are captured automatically when the cell runs. No extra steps required — just create the figure and it appears as output.
import matplotlib.pyplot as pltimport numpy as np
x = np.linspace(0, 10, 100)plt.figure(figsize=(8, 4))plt.plot(x, np.sin(x), label='sin(x)')plt.plot(x, np.cos(x), label='cos(x)')plt.xlabel('x')plt.legend()plt.title('Trig Functions')plt.show()All open figures are captured at the end of execution, so you can create multiple plots in a single cell and each one renders as a separate image in the output.
Supported plotting libraries
Section titled “Supported plotting libraries”Any plotting library that builds on matplotlib works:
- matplotlib — the standard; figures are captured automatically
- seaborn — statistical visualization (uses matplotlib under the hood)
- pandas plotting —
df.plot()creates matplotlib figures and they are captured the same way
NumPy is pre-installed. Other packages install automatically the first time you import them (see Code Execution for details).
Sharing images with the AI
Section titled “Sharing images with the AI”You can attach images to messages in the AI chat panel. Click the attachment icon in the chat input, select an image, and the AI can view and discuss it — useful for asking about a gel image, a plot, or a figure from a paper.
Block actions
Section titled “Block actions”Hover over any image block to reveal the toolbar. Use the ⋮ menu for:
- Move up / Move down — reorder the block within the notebook
- Duplicate — clone the block and all its images
- Delete — remove the block