2017-07-10 36 views
0

我有TABLE_LIST对象,它是一个有表格的列表(我无法提供隐私策略的内容,对不起)。在R包的Formattable中,如何同时应用数字和条件格式?

我第一次创建的对象TABLE_LIST(这是data.frames的2x12的列表)

TABLE_LIST=lapply(1:4, function(x) data.frame(rbind(total.ratio4[[x]][-(1)], total.ratio2[[x]][-(1)]), row.names=row)) 

下面的代码给我基于对细胞的价值红色和绿色的字体颜色,它的工作原理是一个魅力:

formattable(TABLE_LIST[[1]], list(area(,-(c(5,10)))~formatter("span", style=x~style(color=ifelse(x>1,"red","green"))),area(,(c(5,10)))~formatter("span", style=x~style(color=ifelse(x>1,"green","red"))))) 

但是,我需要颜色和逗号分隔数字。我的失败尝试是:

formattable(TABLE_LIST[[1]], list(area(,-(c(5,10)))~formatter("span", style=x~style(color=ifelse(x>1,"red","green"))),area(,(c(5,10)))~formatter("span", style=x~style(color=ifelse(x>1,"green","red"),digits(x,2))), 

area(1:2,1:10)~formatter("span",x~ style(digits(x,2))))) 

此代码效果不错,但会清除颜色的格式。我不知道还有什么要做。

我不得不提到我不能改变原始data.frame而不会搞乱一切。所以我必须对table_list或formattable进行更改。谢谢。

回答

0

我想我解决了它。因此,我将分享这个小知识,谁可能有同样的问题我的人:

formattable(TABLE_LIST[[1]], list(area(,-(c(5,10)))~formatter("span", 
style=x~style(color=ifelse(x>1,"red","green")),x~style(digits(x,4))), 
area(,(c(5,10)))~formatter("span",style=x~style(color=ifelse(x>1,"green","red")), 
x~style(digits(x,4))))) 

基本上相同的格式化内,对款式的水平,添加一个逗号和x~style

相关问题