在R中为表格grob自定义一列的字体颜色



我想在我的表格grob中自定义一个特定列的字体颜色。

这是原来的表格,这是我想要的表格的样子,第五列的零改为"白色"

我在这里遵循baptise的说明:如何在R中自定义表grob的特定列?没有成功。

这是我的简单数据框架:

count <- data.frame("day17" = c(17, 4, 4, 4, 3, 2), 
"day27" = c(27, 4, 5, 5, 5, 1), "day37" = c(37, 5, 5, 4, 4, 3), 
"day47" = c(47, 2, 1, 3, 0, 0), "day57" = c("Time (d)", 0, 0, 0, 0, 0))

按照上面baptiste的例子,我尝试指定第五列的颜色:

colours <- matrix(c("black", "white", "white", "white", "white", "white"), ncol=1, nrow=nrow(count), byrow=FALSE)

,下面是生成表格的代码:

table_theme <- ttheme_minimal(core = list(fg_params=list(col=(colours))))
grid.newpage() 
table <- tableGrob(count, theme = table_theme, rows=NULL, cols=NULL)  
grid.draw(table)

此代码仍然以行为基础而不是以列为基础更改颜色。在这件事上的任何帮助将是非常感激的。

我是新的堆栈溢出,这是我的第一个问题,请原谅我,如果答案实际上是一个错误的代码,如缺少括号等!

颜色是按列回收的,所以如果你想为不同的列提供不同的颜色,你需要传递一个完整的颜色矩阵,例如

colours <- matrix("black", nrow(count), ncol(count))
colours[2:nrow(colours), ncol(colours)] <- "white"

最新更新