我有这个表,我想用RMD文件中的PANDOC以PDF格式呈现
table = data.frame(category = c("A","B","C"), groupA = c(.2,.3,.5), groupB= c(.6,.7,.9))
table
pandoc.table(table,split.table = Inf,keep.line.breaks = TRUE)
----------------------------
category groupA groupB
---------- -------- --------
A 0.2 0.6
B 0.3 0.7
C 0.5 0.9
----------------------------
如何为" groupA"的细胞着色?和" groupB"条件格式的列如:
>0 and <= .2 = "green"
>.2 and <= .3 = "red"
>.3 and <= .4 = "blue"
>.4 and <= .5 = "orange"
>.5 and <= .6 = "yellow"
>.6 and <= .7 = "black"
>.7 and <= .8 = "brown"
>.8 = "white"
答案 0 :(得分:1)
如果您要渲染为PDF,则您(或其他人的功能)必须使用LaTeX格式化您的表格。虽然有大量有用的软件包和函数可以为您完成所有工作(knitr::kable
,xtable
,stargazer
),但如果您需要细粒度控制,则可能需要编辑LaTeX自己,至少在一定程度上。
一个相当无痛的选项是Hmisc::latex
,它将从data.frame创建表,并且有一个参数(在许多中)cellTexCmds
,允许通过类似矩阵传递单个单元格的样式data.frame的维度。 file
的{{1}}参数,因此它不会保存文件,''
因此表格会显示在文档中的正确位置。要设置单元格背景颜色,您需要where = '!htbp'
或xcolor
LaTeX包,它们可以加载到YAML前端。
要消除LaTeX注释,请捕获输出,子集和打印,或者只使用.Rnw而不是.Rmd。
colortbl