使用tableGrob
导出PDF时,有没有办法有条件地格式化gridExtra
单元格/行?根据数据框中的条件数值,我希望更改PDF输出的行颜色背景/填充格式。
示例数据:
Name <- c('John','Adam','Jack')
a <- c(1, 4, 3)
b <- c(0, 6, 1)
df1 <- data.frame(Name, a, b)
现在我有一个简单的主题来格式化输出:
mytheme <- gridExtra::ttheme_default(
core = list(fg_params=list(cex = 0.6),bg_params=list(fill=c("#FFFFFF", "#F8F8F8"))),
colhead = list(fg_params=list(cex = 0.6)),
rowhead = list(fg_params=list(cex = 0.6)))
这是我的快速PDF输出代码:
pdftitle=paste("Table-1.pdf",sep="")
pdf(pdftitle,width=14, height=8)
gridExtra::grid.table(df1,theme = mytheme, rows = NULL)
dev.off()
示例数据中的列a
和b
中的数值实际上是成功的和不成功的事件。我最终会快速找到成功百分比并将其添加到我的表中以获得输出。
我希望实现的是格式化PDF格式中表格的整行,以便df1
中任何大于或等于50%的值都将采用以下颜色格式化:{{1如果低于50%,格式为#C4122E