I am linking Tabulators together so that selecting a row in one drives the data loaded and viewed in another two. When I view the individual UI components in separate Jupyter notebooks, everything appears to be fine. However, when I try to put these components in separate tabs within a GoldenTemplate layout, the headers of some of my Tabulators disappear!
I was about to open a new GitHub issue to report these disappearing linked Tabulator headers in the GoldenTemplate layout, when it occurred to me that perhaps it had something to do with my specifying hidden_columns in the constructor.
When I commented out the hidden_columns, sure enough all the headers appeared (including the ones I didn’t want to see!), but after selecting a row in the first Tabulator (which loads related data into the second Tabulator) the headers and data columns are not aligned.
If I set the Tabulator.hidden_columns after launching the GoldenLayout app I can hide the columns, but only if I am viewing the tab containing that Tabulator (otherwise the headers disappear again!). Or if I run the whole notebook (Cell > Run All) and hide the columns without allowing the app to render first, the headers again disappear.
I have pushed the above reproducible example to GitHub with more descriptions and screenshots in the README. I am testing with a recent development version of panel (0.13.0a31) and I have included conda environment YAML files in the repo.
I have a feeling I’m missing something in how I initialise and synchronise the Tabulators. Any advice would be greatly appreciated.
Is there a way to force a Tabulator (or any other panel widget) to refresh itself or rerender after changing some of its properties?
I also seem to remember seeing some code in a Discourse answer that allows for code to run after the app is fully running, but I cannot remember the name of the attribute or property that was checked so my searches have drawn a blank!
I can see you have put a lot of work into this. Though this can (at least for me) make it hard to understand the problem itself and therefore possible to find a solution or verify if it is a bug. So is it possible for you to reduce the problem into a minimal, reproducible example (MRE)?
When looking at your repo I will suggest you put all the widgets into functions so they don’t end up sharing their state between different sessions.
I’m running panel from the master version (0.13.0a36.post8+gc24e28fa) and running the MRE code from a python script (see the code at the end) and do not see the bug you are describing. Which is great! But I have noticed another bug, which only shows the tabulator inside the Description tab:
So my advice will be to try and update to the latest dev version, and/or wait for the next dev version 0.13.0a37. And see if the problems still occur for your bigger reproducible example. For the error with using pn.Column I will properly advise you to create an issue on Github.