This post represents a quick review of the
Jupyter multi-outputs Jupyter notebook extension.
The extension is one of a series of extensions developed by the Japanese National Institute of Informatics (NII) Literate Computing for Reproducible Infrastructure project.
My feeling is that some of these notebook extensions may also be useful in an educational context for supporting teaching and learning activities within Jupyter notebooks, and I’ll try to post additional reviews of some of the other extensions.
So what does the multi-outputs extension offer?
We can also save the output of a cell into a tab identified by the cell execution number. Once the cell is run, click on the pin item in the left hand margin to save that cell output:
The output is saved into a tab numbered according to the cell execution count number. You can now run the cell again:
and click on the previously saved output tab. You may notice that when you select a previous output tab that a left/right arrow “show differences” icon appears:
Click on that output to compare the current and previous outputs:
(I find the graphic display a little confusing, but’s typical for many differs! If you look closely, you may seen green (addition) and red (deletion) highlighting.)
The differ display also supports simple search (you need to hit Return to register the search term as such.)
The saved output is actually saved as notebook metadata associated with the cell, which means it will persist when the notebook is closed and restarted at a later date.
One of the hacky tools I’ve got in
tm351_utils (which really needs some example notebooks…) is a simple differencing display. I’m not sure if any of the TM351 notebooks I suggested during the last round of revisions that used the differ made it into the finally released notebooks, but it might be worth comparing that approach, of diffing across the outputs of two cells, with this approach, of diffing between two outputs from the same cell run at different times/with different parameters/state.
Config settings appear to be limited to the maximum number of saved / historical tabs per cell:
So, useful? I’ll try to work up some education related examples. (If you have any ideas for some, or have already identified and/or demonstrated some, please let me know via the comments.)