我习惯像这样xtable
管理我的桌子Sweave
<<label=tab1, echo = FALSE, results = tex>>=
print(xtable(Table1))
@
<<label=tab2, echo = FALSE, results = tex>>=
print(xtable(Table2))
@
我想知道如何将这些表并排放置。任何帮助都将不胜感激。谢谢
答案1
其基本思想是,您需要确保生成的表格不会浮动;相反,您应该将它们放在您自己的浮动环境中。在下面的示例中,我使用包的命令xtable
生成了两个并排的表格,每个表格都在一个{minipage}
环境中,并且每个表格都有自己的标题。\captionof
caption
我已使用 格式化表格booktabs
。请参阅如何在 LaTeX 中使用 R 生成的表格?了解更多详情。
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{booktabs}
\usepackage{caption}
\title{Side-by-side xtables}
\author{}
\date{}
\begin{document}
\maketitle
First some R code to create some data.
<<>>=
myData <- matrix(c(19,89,23,23,74,44,16,39,67),ncol=3,byrow=TRUE)
colnames(myData) <- c("A","B","C")
rownames(myData) <- c("1","2","3")
myData2 <- myData * 2
@
Now we place the data in two side-by-side tables:
\begin{table}[htb]
\begin{minipage}{.45\textwidth}
\centering
<<echo=FALSE,results=tex>>=
library("xtable")
print(xtable(myData),
floating=FALSE,
hline.after=NULL,
add.to.row=list(pos=list(-1,0, nrow(myData)),
command=c('\\toprule\n','\\midrule\n','\\bottomrule\n')))
@
\captionof{table}{The first table}
\end{minipage}
\begin{minipage}{.45\textwidth}
\centering
<<echo=FALSE,results=tex>>=
print(xtable(myData2),
floating=FALSE,
hline.after=NULL,
add.to.row=list(pos=list(-1,0, nrow(myData2)),
command=c('\\toprule\n','\\midrule\n','\\bottomrule\n')))
@
\captionof{table}{The second table}
\end{minipage}
\end{table}
\end{document}