Notebooks executed through jobs don't show rich output

What are you seeing is covered in this reply to an issue ’ plot not rendering’ about papermill:

“So the issue is that the notebook is outputting javascript in the plot and for security reasons the classic notebook does not render javascript imported from external sources. To get around this go to File → Trust Notebook and then the plot will appear.”

In your case, it is because when the notebook gets opened after you made it on the command line, it will not open as trusted. (When you are running code in it Jupyter actively, it is trusted. This was the situation you had when you said, “The plot will show up fine.”)
So just trust it and it will render those parts of the output fully.

You can also set trust on the command line as this will be easier for you since you are using command line already, plus the trust setting isn’t as easy to find in JupyterLab (it is there under the Command Palette though):

jupyter trust *.ipynb

I know I linked to a post about plots; however, the same holds for the ‘extras’ that a styled dataframe has. Without adjusting the trust level of the command-line run Jupyter .ipynb file, the syled dataframe will render some but without the colors and things that you may want to show with styling. Trusting will restore it fully as the code is all in the Jupyter .ipynb file as you can see by opening it in your favorite text editor.

2 Likes