通过值为df单元着色

时间:2019-06-07 15:48:10

标签: python

我想创建一个熊猫数据框,使每个单元格根据其值着色,这意味着较大的数字将具有比较小的数字更暗的颜色。另外,我希望左上方和右下方的单元格为绿色,而右上方和左下方的单元格为红色。 像这样的东西:

enter image description here

我要处理的最接近的事情是这样:

df = pd.DataFrame(np.array([[16, 20], [5, 4]]))
color1 = sns.light_palette("green", as_cmap=True)
color2 = sns.light_palette("red", as_cmap=True)

df = df.style.background_gradient(cmap=color1, subset=pd.IndexSlice[[1,0], [1,0]]).background_gradient(
    cmap=color2, subset=pd.IndexSlice[1,0]).background_gradient(cmap=color2, subset=pd.IndexSlice[0, 1])

但是它用相同的颜色为右上方和左下方的单元格上色,而不是根据该值进行渐变。

可以做我想做的事吗?

0 个答案:

没有答案