New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adds better Tables and interactive analysis via Perspective, Tabulator and PivotTable #1690
Conversation
Thanks @xavArtley . The cause of the Tabulator problem is that I did not specify a At least adding Solves the problem for me. This is already done in the notebook example. And I just added it to the Let me know if this does not solve your issue or you see other issues. Thanks |
@xavArtley . I've on purpose not added the css file to the Tabulator bokeh model as then the user cannot later specify one of the many available css Themes for Tabulator. At least that is what I have seen: loading multiple of these themes is not a good idea. |
My suggestion for these widgets is to add a disclaimer to the notebook. That these are up for review and the api might change. But lets get them in. If we have to wait 6 more months before we get some decent tables into Panel then that is simply way to long. :-) Every time I have a plot my users also wants an nice looking table they can sort and filter. That is my experience. |
-1 on merging before release. I will promise there will never be another 6 month gap. I'm happy to release 0.11 as soon as I'm done with the tabulator integration which I'm fully funded to work on in the coming weeks. |
Promise kept @philippjfr (see post above). It did not take 6 months. But maybe a little bit longer than you anticipated? Always multiply with 3. :-) Congrats with the release. |
The support for DataFrame Tables in Panel is strong if you look at the underlying functionality. But the look, feel and user experience could be better. See
pn.widgets.DataFrame
#1223This PR addresses this by adding the awesome
PerspectiveViewer
,Tabulator
andPivotTable
widgets.Background Info
I believe the PerspectiveViewer and Tabulator widgets are ready for deployment. I would expect no issues from normal usage. I have used them. There are a lot of pytests in the PR and there are working Jupyter Notebook examples included.
In some advanced streaming example there might be some issues. But for that we need the use cases and request from users.
But I strongly believe these widgets should get out there and be available to the Panel community. They are (also) game changers for Panel.
The implementation of the PivotTable widget is very basic. But the functionality that is there works.
I contribute these together in one PR as they share some common code for "Dataframe" widgets. So actually this PR also contributes some code that should make it easier to contribute Dataframe based widgets in the future. An example from awesome-panel-extensions is the
Notes
PerspectiveViewer
The tests are in the
test_perspective.py
file.It also contains a test app you can run with
python -m panel serve 'panel\tests\widgets\test_perspective.py' --dev
orpython 'panel\tests\widgets\test_perspective.py'
. There is also a reference guide notebook calledPerspectiveViewer.ipynb
Roadmap
FYI. @ceball. This might interest you.
Tabulator
The tests are in the
test_tabulator
folder.It also contains a test app you can run with
python -m panel serve 'panel\tests\widgets\test_tabulator\test_tabulator_examples.py' --dev
. There is also a reference guide notebook calledTabulator.ipynb
.As you can see below the Tabulator Widget will support the dark themed Templates pretty well using the
midnight
theme. It also contains other themes likebootstrap
andmaterial
.For some reason the streaming did not working for me in the Notebook. But it works in the server example. I would just forget about it until some user requests a fix. It's a small detail.
PivotTable JS
The tests are in
test_pivottable.py
.This also contains a test app you can run with
python -m panel serve 'panel\tests\widgets\test_pivottable.py' --dev
and a reference notebookPivotTable.ipynb
.The implementation is simple. But Works. If you (@philippjfr ) thinks it's too bare bones feel free to leave it out. But now you have the code.
Ready for review
FYI. @philippjfr . This is ready for review. I believe its mature enough to include. But I know you can do awesome improvements. Don't know if you want to do that first or get it out to the community to see if they need these components at all first.
Please note that the Notebooks contain some links to images, gifs and csv files in my github repos. You can use them for now if you want. But they should be moved to a Panel location eventually.