Подтвердить что ты не робот

R, knitr, xtable, чередующиеся цвета строк

Я пытаюсь создать таблицу с xtable в R, используя knitr с чередующимися цветами строк. Я могу распечатать таблицу в PDF файле, но не могу определить команду add.to.row в руководстве xtable вместе с пакетом colortbl.

4b9b3361

Ответ 1

Эта цифра была создана с использованием кода внизу. Надеюсь, вы не сломаете себе глаза, обнаружив светло-серый цвет (я почти на одном из своих экранов).

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}