Thanks again to bring this up and sorry for not getting back to your question sooner.
As we discussed in person, you are correct that display
is needed to be called on show
output unless it’s the last line in a cell. Jupyter automatically displays the output of the last line it called, but if it’s within a conditional, the output will be discarded.
Clarified that in the docs with Document use of display to show plots in notebooks by vladsavelyev · Pull Request #2938 · MultiQC/MultiQC · GitHub