Jupyter-specific features

Note

The features described on this page are not currently functional in pydeck v0.9+. Both .show() and .to_html() render via an HTML iframe using the deck.gl JS bundle from jsDelivr. The widget code path in .show() is disabled in the Python source (pydeck/bindings/deck.py). Restoring full Jupyter widget support — including the features below — is tracked as a future improvement.

Jupyter environments offer unique opportunities for two-way data interaction, sharing data between the Python backend and visualization in deck.gl.

To use a visualization with these features, call pydeck.bindings.deck.Deck.show() on the pydeck.bindings.deck.Deck object rather than pydeck.bindings.deck.Deck.to_html().

https://i.imgur.com/qenLNEf.gif

Conway’s Game of Life in pydeck

  • Binary data transfer. For certain data sets pydeck can support many millions of points by using Jupyter’s socket-level communication. Further documentation is here.

  • Data selection. Data can be selected within a pydeck visualization and pushed back to the client. Holding Command while clicking allows the user to select multiple points.

Selecting data in Jupyter