有没有办法通过主题告诉tableGrob
更改特定行的颜色和格式(粗体)?
我使用tableGrob
得到以下输出:
然而,我希望达到以下美学效果,并使特定的线条变粗,并改变它们的颜色,如下例所示:
基于以下示例:enter link description here
t1 <- ttheme_default(core=list(
fg_params=list(fontface=c(rep("plain", 4), "bold.italic")),
bg_params = list(fill=c(rep(c("grey95", "grey90"),
length.out=4), "#6BAED6"),
alpha = rep(c(1,0.5), each=5))
))
grid.table(iris[1:5, 1:3], theme = t1)
每4行更改一行的颜色。结果如下: result
但是,我需要根据条件使其具体化。
答案 0 :(得分:1)
如果你在评论中找到关于如何“找到”grobs的链接,那么你可以做以下事情:
library(grid)
library(gridExtra)
tg <- tableGrob(iris[1:5, 1:3])
for (i in c(19,24,29)) tg$grobs[[i]] <- editGrob(tg$grobs[[i]], gp=gpar(col="white"))
for (i in c(34,39,44)) tg$grobs[[i]] <- editGrob(tg$grobs[[i]], gp=gpar(fill="blue"))
grid.newpage()
grid.draw(tg)
如果这是常规的参数化报告,那么这是一次“一劳永逸”的操作,以确定单元格位置并应用您的自定义格式。
否则,肯定会开发一组样式函数来定位“单元格”,就像在Google工作表或Excel中一样。