有没有办法在使用导出 PDFtableGrob
时有条件地格式化单元格/行?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 中表格的整行,以便任何大于或等于 50% 的值df1
都将被格式化为这种颜色:#C4122E
如果低于 50%,则格式化为#1B458F