taipy icon indicating copy to clipboard operation
taipy copied to clipboard

[🐛 BUG] style[column_name] does not render any color

Open sumanth-tccc opened this issue 1 year ago • 0 comments

What went wrong? 🤔

<|{food_df}|table|style[Category] = {lambda state, value, index, row, column_name: "blue-cell"}|> when trying cell render no highlights seen

Expected Behavior

Expected column to highlight

Steps to Reproduce Issue

food_df = pd.DataFrame({ "Meal": ["Lunch", "Dinner", "Lunch", "Lunch", "Breakfast", "Breakfast", "Lunch", "Dinner"], "Category": ["Food", "Food", "Drink", "Food", "Food", "Drink", "Dessert", "Dessert"], "Name": ["Burger", "Pizza", "Soda", "Salad", "Pasta", "Water", "Ice Cream", "Cake"], "Calories": [300, 400, 150, 200, 500, 0, 400, 500], })

def food_df_on_edit(state, var_name, payload): index = payload["index"] # row index col = payload["col"] # column name value = payload["value"] # new value cast to the column type user_value = payload["user_value"] # new value as entered by the user

old_value = state.food_df.loc[index, col]
new_food_df = state.food_df.copy()
new_food_df.loc[index, col] = value
state.food_df = new_food_df
notify(state, "I", f"Edited value from '{old_value}' to '{value}'. (index '{index}', column '{col}')")

def food_df_on_delete(state, var_name, payload): index = payload["index"] # row index

state.food_df = state.food_df.drop(index=index)
notify(state, "E", f"Deleted row at index '{index}'")

def food_df_on_add(state, var_name, payload): empty_row = pd.DataFrame([[None for _ in state.food_df.columns]], columns=state.food_df.columns) state.food_df = pd.concat([empty_row, state.food_df], axis=0, ignore_index=True)

notify(state, "S", f"Added a new row.")

def table_style(state, index, row): return "blue-cell" if row.Category == "Dessert" else ""

def highlight_column_cells(state, value, index, row, column_name): print(f"Column: {column_name}, Value: {value}, Row: {row}")

if row.Category == 'Dessert':
    return "blue-cell"
return ""

def simple_highlight(state, value, index, row, column_name): return "blue-cell" # Apply to all cells as a test

table_properties = { "class_name": "rows-bordered", "filter": True, "on_edit": food_df_on_edit, "on_delete": food_df_on_delete, "on_add": food_df_on_add, "group_by[Category]": True, "apply[Calories]": "sum", "style[Calories]" : highlight_column_cells }

Solution Proposed

No response

Screenshots

DESCRIPTION

Runtime Environment

No response

Browsers

No response

OS

No response

Version of Taipy

No response

Additional Context

No response

Acceptance Criteria

  • [ ] Ensure new code is unit tested, and check code coverage is at least 90%.
  • [ ] Create related issue in taipy-doc for documentation and Release Notes.

Code of Conduct

  • [X] I have checked the existing issues.
  • [X] I am willing to work on this issue (optional)

sumanth-tccc avatar Sep 16 '24 12:09 sumanth-tccc