Dashtable: is it possible to filter on row_index and column_index at the same time?


Referring to the doc here https://dash.plot.ly/datatable/style it seems possible to apply a specific style on

  • a row
  • a colum
  • a column on which filters are applied to isolate cells

What I’m triying to achieve is to isolate one cell in a table of several identical values.

Consider a 3x3 table full of zeros. I want to highlight the last zero on the last row and the last colum.

  • if I apply a style on the row, with a filter “=0”, then the whole row is highlighted
  • if I apply a style on the colum without or with a filter, the whole column is higlighted

So far I’ve tried:

                        'if': {'row_index': 47, 'filter': '{ColumID} != 0'},   
                        'backgroundColor': 'green',

where ColumnID is the ID of my column,


                    'if': {'column_id': 'ColumnID', 'filter': 'row_id: != 0'},   
                    'backgroundColor': 'green',

But since it’s not designed to be used this way, well, it doesnt work.

Is there a workaround?

Actually, an answer was provided here: Is it possible to style multiple headers separately?

E.g provided:

    { 'if': { 'column_type': 'numeric' }, 'backgroundColor': 'magenta' },
    { 'if': { 'header_index': 2 }, 'backgroundColor': 'orange' },
    { 'if': { 'column_id': 'Complaint ID', 'header_index': 0 }, 'backgroundColor': 'red' },
    { 'if': { 'column_id': 'Complaint ID', 'header_index': 1 }, 'backgroundColor': 'pink' },
    { 'if': { 'column_id': 'Complaint ID', 'header_index': 2 }, 'backgroundColor': 'yellow' },

Same logic can be applied on cells & data.