hvplot.interactive vs pn.rx - Recommendation for new code?

Based on some discussions and changes on github, it seems that hvplot.interactive is no longer the recommended approach for building interactive plots?

The documentation for Panel and overall Holoviz tutorial both seem to prefer pn.rx instead.

That said, the documentation for hvplot still includes a section on using hvplot.interactive: Interactive — hvPlot 0.12.0 documentation but hvplot.interactive does not seem to have its own reference page in the hvplot API documentation.

Is hvplot.interactive still a good way of building interactive plots or has it been soft depreciated?

Indeed, there’s been discussion about phasing it out in favor of other interactive approaches. Are you making use of it? We definitely would like to hear about your use case, if so

Here’s a guide on rx

However, IIRC rx doesn’t natively work with hvplot which is why interactive is still available…? hvplot.show fails with panel reactive object · Issue #1647 · holoviz/hvplot · GitHub

I haven’t been making use of it yet, I went through the hvPlot tutorials first before the other Holoviz/Panel tutorials/documentation and tried the hvplot.interactive approach for my app before getting stuck and looking for alternatives. That led me to reading more about pn.rx and pn.bind (which ended up working for my use case). I was more so wondering about best practices for new apps and where to invest my time learning.

So it sounds like hvplot.interactive doesn’t provide any functionality beyond what can be already accomplished with pn.rx or pn.bind. I’ll likely just not bother trying to use hvplot.interactive moving forwards then.

Thanks for that guide, I came across it earlier and it definitely helped solidify my understanding of param.rx. Based on the examples in the documentation, it seems like hvplot does work with rx objects?

https://panel.holoviz.org/how_to/interactivity/hvplot_interactive.html#../../reference/panes/ReactiveExpr

I haven’t tested, but I remember vaguely something like:

df.hvplot(x=some_widget.rx().some_expression) didn’t work

The best practices are here if you haven’t seen it yet; it’s a bit hidden…
https://panel.holoviz.org/how_to/best_practices/index.html

I guess it should also mention when to use rx vs bind