我正在尝试使用带有交替行颜色的xtable
在R中生成一个knitr
的表格。我可以在PDF输出中打印一个表,但无法在add.to.row
手册中找到xtable
命令以及colortbl
包。
答案 0 :(得分:36)
这个数字是使用底部的代码生成的。我希望你不要睁开眼睛检测浅灰色(我几乎在我的一个屏幕上)。
library(xtable)
mydf <- data.frame(id = 1:10, var1 = rnorm(10), var2 = runif(10))
rws <- seq(1, (nrow(mydf)-1), by = 2)
col <- rep("\\rowcolor[gray]{0.95}", length(rws))
print(xtable(mydf), booktabs = TRUE,
add.to.row = list(pos = as.list(rws), command = col))
关键是定义行索引(rws
)及其各自的颜色(col
)。如果您希望行之间的颜色不同,则需要使用paste
。
\documentclass[a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[english]{babel}
\usepackage{booktabs}
\usepackage{colortbl, xcolor}
\begin{document}
<<do_table, results = "asis">>=
library(xtable)
mydf <- data.frame(id = 1:10, var1 = rnorm(10), var2 = runif(10))
rws <- seq(1, (nrow(mydf)), by = 2)
col <- rep("\\rowcolor[gray]{0.95}", length(rws))
print(xtable(mydf), booktabs = TRUE,
add.to.row = list(pos = as.list(rws), command = col))
@
\end{document}