使用applymap突出显示Cell不适用于Jupyter

时间:2017-09-08 12:14:47

标签: python pandas jupyter

我正在尝试突出显示pivot_table上的一些单元格,它取决于单元格的值。当值超过1000时,单元格的背景颜色应为蓝色和红色,在其他情况下。

我正在定义我的色彩功能

def color_range(val):
    background-color = 'blue' if val > 1000 else 'red'
    return 'background-color: %s' % background-color

然后我将此功能应用于我的pivot_table

 df.style.applymap(color_range)
 df.head()

此代码无效,所有单元格均为白色。也许是环境,我在Jupyter工作。

1 个答案:

答案 0 :(得分:3)

df.style不是一个就地操作。因此,您所看到的输出是第二个操作的输出,即df.head()

要查看样式的输出,您需要执行

df.style.applymap(color_range)

但是,如果您只想在df.head()上看到它,您可以通过两种方式

df.head().style.applymap(color_range)

或者,导出样式,如

style_bg = df.style.applymap(color_range)
df.head().style.use(style_bg .export())