python - Jupyter Notebook 中的数据框样式
问题描述
我有一个 pandas 数据框,我根据第二个数据框中的值对其应用了单元格着色。(2个数据框大小相同)。我是根据此处显示的SO 答案执行此操作的:
现在我已经为数据框着色,单元格轮廓消失了。我看到了使用以下内容添加单元格轮廓的建议:
df_navigator = df_navigator.data.style.set_properties(**{'text-align': 'left','border-color':'Black','border-width':'thin','border-style':'dotted'})
如果我这样做,那么单元格着色就会消失。
如何在将黑色边框添加回显示的数据框中时保持自定义单元格颜色?
添加完整的复制代码:
import pandas as pd
import numpy as np
df = pd.DataFrame({
'A': 'foo bar foo'.split(),
'B': 'one one two'.split(),
'C': np.arange(3),
'D': np.arange(3) * 2
})
j = [
{ 'bgcolor': '#55aa2a'},
{ 'bgcolor': '#d42a2a'},
{ 'bgcolor': '#d42a2a'},
]
df2 = pd.DataFrame({
'E': j,
'F': j,
'G': j,
'H': j
})
df2 = df2.applymap(lambda x: 'background-color: {}'.format(x.get('bgcolor')))
def highlight(x):
return pd.DataFrame(df2.values, columns = x.columns)
df.style.apply(highlight, axis=None)
提前致谢!