This sounds like the best way to do this. I believe @sjtrny is working through this in Is it possible to update just `layout`, not whole `figure` of Graph in callback? as well. The only thing to add would be to use dcc.Store
instead of html.Div
in case the “hidden div” feels too hacky. I don’t think there are any performance issues with using html.Div
though.
The nice thing about updating a clientside store (html.Div or dcc.Store) is that other components can use this data as well like other charts or other data tables.
A flow that we imagined when writing this feature was: app.layout
as a function which embeds a dataset in dcc.Store
. dcc.Store
then updates a data_table.DataTable
directly (with a clientside callback) and then the DataTable
updates a series of graphs with derived_virtual_data
property. Then, the table is a natural UI for doing filtering & sorting of the data in the table and in the graphs without needing to write any extra Python code!