Условное оформление строки на основе значения столбца - PullRequest
0 голосов
/ 27 марта 2019

Я хотел бы оформить строку на основе значения столбца, в настоящее время у меня есть этот код:

import dash
import dash_table
import pandas as pd

df = pd.read_csv('https://raw.githubusercontent.com/plotly/datasets/master/solar.csv')

app = dash.Dash(__name__)
print([{"name": i, "id": i} for i in df.columns])
app.layout = dash_table.DataTable(
    id='table',
    columns=[{"name": i, "id": i} for i in df.columns],
    data=df.to_dict("rows"),
    style_data_conditional=[
        {
        'if': {
                'column_id': 'Number of Solar Plants',
                'filter': '"Number of Solar Plants" > num(100)'
            },
            'backgroundColor': '#3D9970',
            'color': 'white',
        }
    ],
)

if __name__ == '__main__':
    app.run_server(debug=True)

, который дает следующий результат:

enter image description here

Но я действительно хочу, чтобы строки (в данном случае tr 1 и 8) были оформлены на зеленом фоне, а не только на ячейках.

Что я могу сделатьчтобы достичь этого?

1 Ответ

1 голос
/ 27 марта 2019

, чтобы исправить вашу проблему, вам просто нужно удалить параметр column_id в вашем style_data_conditional.Таким образом, весь ряд будет окрашен в зеленый цвет.

Вы должны сделать это:

style_data_conditional=[
        {
        'if': {
                'filter': '"Number of Solar Plants" > num(100)'
            },
            'backgroundColor': '#3D9970',
            'color': 'white',
        }
]
...