Jupyter drawing utility
Small utility to make simple drawings in Jupyter notebooks with ipycanvas and ipywidgets. Useful for getting quick user input in research prototypes, e.g., for masking or annotation.
Install
pip install ipycanvas-drawing
Usage
Create a simple drawing interface. Check out the notebook in examples
for a more complete example.
from ipycanvas_drawing import DrawingWidget
# Create a drawing widget
# You can set other setup parameters: background, alpha, default_style, default_radius
drawing_widget = DrawingWidget(width=500, height=500)
# Show the drawing widget
drawing_widget.show()
# Get the image data as a numpy array
image_output = drawing_widget.get_image_data()
Known issues
- Visual Studio Code's Jupyter environment doesn't like ipycanvas's
sync_image_data
functionality. Workaround: open notebooks in Jupyter lab or Notebook in the browser. - ipycanvas does not work in Google Colab. Workaround: use the Binder to quickly try the tool without needing to install it on your own machine.
Credits
Based on the hand drawing example provided by @martinRenou, but adds some additional functionality like adding squares and ellipses and a 1-step undo.