Versions:
nteract : 0.12.3
holoviews : 1.11.0
Plots gernerated by holoviews rendered at the bottom of the window in nteract instead of right under each cell.


It does seem like a holoviews issue since bokeh behaves normally.

This also affects vscode python extension interactive tab:

Note that there is a workaround, you can get it working by setting the HV_DOC_HTML to True:
import os
os.environ['HV_DOC_HTML'] = 'True'
import holoviews as hv
hv.extension('bokeh')
hv.renderer('bokeh').theme = 'dark_minimal'
hv.Curve([1, 2, 3])

That env var also works for VS Code:

One solution here would be to make the type of the MIME bundles dependent on whether the frontend sends back an acknowledgement when the extension is loaded. If we did that then the custom mime type would only be published in JupyterLab and classic notebook and any other frontends would receive all the components as a single 'text/html' component.
For further discussion you can also see the issue in nteract (https://github.com/nteract/nteract/issues/3370).
Just for the record. The code showcased by @philippjfr for holoviews in VS Code does not work for me.
I get

import os
os.environ['HV_DOC_HTML'] = 'True'
import holoviews as hv
hv.extension('bokeh')
hv.renderer('bokeh').theme = 'dark_minimal'
hv.Curve([1, 2, 3])
I get the same error when trying to use Panel
import panel as pn
pn.extension()
pn.Column("# Hello Panel World")
I believe this is a regression as I remember that I have tried it out successfully previously.
I'm using Holoviews 1.13.2. and VS Code 1.43.2
Bokeh code works though
from bokeh.plotting import figure, show
from bokeh.io import output_notebook
output_notebook()
plot = figure(plot_width=300, plot_height=300)
plot.line(x=[1,2,3], y=[1,2,3])
show(plot)

@MarcSkovMadsen Could you open a new issue in Panel?