Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在xtable中的Add.to.row参数中添加两个命令_R_Latex_R Markdown_Xtable - Fatal编程技术网

在xtable中的Add.to.row参数中添加两个命令

在xtable中的Add.to.row参数中添加两个命令,r,latex,r-markdown,xtable,R,Latex,R Markdown,Xtable,我使用了下面的两个答案为xtable中的交替行添加颜色,或者为长表添加页脚,但我需要弄清楚如何同时做到这两个 (1) 及 (二) 有没有一种方法可以同时使用两者?从您列出的答案来看,您似乎使用了乳胶作为输出。通过为每个命令指定位置,可以组合两个或多个add.to.row命令。命令必须是模式字符的向量,并且位置必须在列表中。在下面,我创建了一个列表addtorow \documentclass{article} \usepackage[utf8]{inputenc} \usepackage[T1

我使用了下面的两个答案为xtable中的交替行添加颜色,或者为长表添加页脚,但我需要弄清楚如何同时做到这两个

(1) 及

(二)


有没有一种方法可以同时使用两者?

从您列出的答案来看,您似乎使用了乳胶作为输出。通过为每个命令指定位置,可以组合两个或多个add.to.row命令。命令必须是模式
字符的向量
,并且位置必须在列表中。在下面,我创建了一个列表
addtorow
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[english]{babel}
\usepackage{longtable}
\usepackage[table]{xcolor}
\begin{document}

<<yoman,echo=FALSE,results='asis'>>=
library(xtable)
#define a data frame
mydf <- data.frame(id = make.unique(rep(letters, length.out = 100), sep=''), 
                   var1 = rnorm(100), 
                   var2 = runif(100),
                   var3=rexp(100),
                   var4=rpois(100,1.4))

#define row indexes to be highlighted (each two), 
#and repeat rowcolor command correspondingly
rws <- seq(1, (nrow(mydf)), by = 2)
col <- rep("\\rowcolor[gray]{0.95}", length(rws))

#create a list that will receive the instructions 
#for add.to.row and add the two instructions
addtorow <- list()

#assign a position argument to addtorow
#rws are the row indexes for the row to be colored, 
#0 is the row index for longtable argument
addtorow$pos <- as.list(c(
                         rws, #positions for first commands(highlighting rows)
                         0    #position for second command (longtable argument)
                         ))

#assign corresponding commands to addtorow
addtorow$command <- as.vector(c( col, #first command (highlighting rows)
                                 paste("\\hline \n",
                                       "\\endhead \n",
                                       "\\hline \n",
                                       "{\\footnotesize Continued on next page} \n",
                                       "\\endfoot \n",
                                       "\\endlastfoot \n",
                                       sep="")), #second command (longtable)
                              mode="character")
print(xtable(mydf,
             caption = "My caption "),
             tabular.environment = "longtable",
             floating = FALSE,
             include.colnames = TRUE,
             include.rownames = TRUE, 
             add.to.row = addtorow,    
             hline.after=c(-1),        # addtorow substitute default hline for first row
             caption.placement="top")

@

\end{document}