问题描述
我想为DataFrame对象ggplot() +
geom_line(aes(x=month,y=cumsum(total),colour='FY19',group=fiscal_year),fy1920 %>% filter(fiscal_year=='19')) +
geom_line(aes(x=month,colour='FY20',fy1920 %>% filter(fiscal_year=='20')) +
scale_colour_discrete(name='fiscal_year',labels=c("FY19","FY20"))
中的“总计”行和“总计”列上色,为此,我尝试了以下操作:
df
但是,当编译器到达代码的最后一行时,会出现以下错误:
import pandas as pd
# Function to set background highlight colour.
def bg_colour (val):
colour = '#ffff00'
return 'background-color: %s' % colour
df = pd.DataFrame({'Category': ['A','B','C','D','Grand Total'],'Total': [1,2,3,4,10]})
t1 = df.style.applymap(bg_colour,subset = ['Total'])
dfT = df.T
dfT = dfT.style.applymap(bg_colour,subset = [4])
t1T = t1.T
据我了解,---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-48-c0c380b9c518> in <module>
12 dfT = dfT.style.applymap(bg_colour,subset = [4])
13 display(dfT)
---> 14 t1T = t1.T
AttributeError: 'Styler' object has no attribute 'T'
隐式地将DataFrame转换为Styler类型的对象,该对象无法作为DataFrame进行进一步处理。
问题1 :DataFrame对象的行和列如何着色?
问题2 :如何将Styler类型的对象转换为DataFrame类型的对象?