python - 在 Python 中动态突出显示不符合阈值的行
问题描述
我有一个数据集 df,我想在其中突出显示不符合阈值的行。(任何地方的结果 == '太高' | '太低')
type start end Percent Result
A 2019-04-01 2019-05-01 21 A Too High
A 2019-05-01 2019-06-01 8 A Ok
A 2019-07-01 2019-08-01 5 A Too Low
B 2020-06-01 2020-07-01 7 B Too High
B 2020-07-01 2020-08-01 5 B Ok
B 2020-09-01 2020-10-01 3 B Ok
我想要的结果:
To have the 'Too High' rows highlighted in Yellow
To have the 'Too Low' rows highlighted in Green
这就是我正在做的
import plotly
import plotly.graph_objs as go
import numpy as np
import pandas as pd
Result = df.Result.values
Too High =
Too Low =
trace = go.Table(columnwidth = [.3,.3,.3,.3],
header=dict(values=['Result'],
fill = dict(color='#FFFF00'),
font = dict(color = 'white', size = 12),
align = ['left'] ),
cells=dict(values=['Too High'],
fill = dict(color=[#unique color for column
['FFFF00' if val == 'Too High' else '#7CFC00' for val in result] ]),
align = ['center'] ))
data = [trace]
我还在研究这个。任何建议表示赞赏
解决方案
查看文档的样式部分了解更多用法。
https://pandas.pydata.org/pandas-docs/stable/user_guide/style.html
import pandas as pd
df = pd.read_clipboard(sep='\s\s+')
def highlight(val):
if 'Too High' in str(val):
color='yellow'
elif 'Too Low' in str(val):
color='green'
else:
color=''
return f'background-color: {color}'
df.style.applymap(highlight)
推荐阅读
- javascript - 反应视频元素不会暂停
- ios - 导航栏出现几秒钟,然后在尝试隐藏在 iOS 15 中嵌入 UIKIt 的 swiftUI 中时消失
- html - document.querySelector 在调用时导致其他方法出错
- html - 我的 CSS 选择器不起作用,我不知道为什么
- angular - 如果打字稿中为空,则替换对象中的值
- python - 如何检查多个字符串变量是否为空?
- c# - Socket.Connect 中的 System.Net.SocketException - (0x80004005) 未知主机
- java - Java JFrame 内部大小
- flutter - 如何更新firestore文档中的字段?
- windows - 如何从桌面快捷方式显示/隐藏任务栏