Table functions
API reference for all pre-defined CapturedCallable
table functions to be used in the
AgGrid
and Table
models. Visit the how-to guide on tables
for more information.
vizro.tables
dash_ag_grid
dash_ag_grid(data_frame, **kwargs)
Implementation of dash_ag_grid.AgGrid
with sensible defaults to be used in AgGrid
.
Source code in src/vizro/tables/_dash_ag_grid.py
| @capture("ag_grid")
def dash_ag_grid(data_frame: pd.DataFrame, **kwargs) -> dag.AgGrid:
"""Implementation of `dash_ag_grid.AgGrid` with sensible defaults to be used in [`AgGrid`][vizro.models.AgGrid]."""
defaults = {
"className": "ag-theme-quartz-dark ag-theme-vizro",
"columnDefs": [{"field": col} for col in data_frame.columns],
"rowData": data_frame.apply(
lambda x: (
x.dt.strftime("%Y-%m-%d") # set date columns to `dateString` for AG Grid filtering to function
if pd.api.types.is_datetime64_any_dtype(x)
else x
)
).to_dict("records"),
"defaultColDef": {
"resizable": True,
"sortable": True,
"filter": True,
"filterParams": {
"buttons": ["apply", "reset"],
"closeOnApply": True,
},
"flex": 1,
"minWidth": 70,
},
"dashGridOptions": {
"dataTypeDefinitions": _DATA_TYPE_DEFINITIONS,
"animateRows": False,
"pagination": True,
},
"style": {"height": "100%"},
}
kwargs = _set_defaults_nested(kwargs, defaults)
return dag.AgGrid(**kwargs)
|
dash_data_table
dash_data_table(data_frame, **kwargs)
Standard dash_table.DataTable
with sensible defaults to be used in Table
.
Source code in src/vizro/tables/_dash_table.py
| @capture("table")
def dash_data_table(data_frame: pd.DataFrame, **kwargs) -> dash_table.DataTable:
"""Standard `dash_table.DataTable` with sensible defaults to be used in [`Table`][vizro.models.Table]."""
defaults = {
"columns": [{"name": col, "id": col} for col in data_frame.columns],
"style_as_list_view": True,
"style_data": {"border_bottom": "1px solid var(--border-subtle-alpha-01)", "height": "40px"},
"style_header": {
"border_bottom": "1px solid var(--state-overlays-selected-hover)",
"border_top": "1px solid var(--main-container-bg-color)",
"height": "32px",
},
"style_data_conditional": [
{
"if": {"state": "active"},
"backgroundColor": "var(--state-overlays-selected)",
"border": "1px solid var(--state-overlays-selected)",
}
],
}
kwargs = _set_defaults_nested(kwargs, defaults)
return dash_table.DataTable(data=data_frame.to_dict("records"), **kwargs)
|