Tengo tablas de datos (d1 y d2) que me gustaría imprimir una al lado de la otra o una sobre la otra en látex con sus propios títulos individuales. ¿Es posible hacer eso directamente con xtable()
? Las dos tablas deben ser distintas, es decir, podríamos llamarlas Tabla x (a) y Tabla x (b), pero deben estar adyacentes o apiladas.R: Imprime dos tablas con xtable()
Respuesta
recomendaría guardar los resultados como dos mesas separadas en diferentes archivos (ver la opción de file=
-print.xtable()
), y luego input
ellos en su documento LaTeX con cualquier comando que encuentre apropiado para su diseño (tabular
, subfloat
, minipage
, etc.). Esto es lo que hago en general, aunque generalmente confío en las instalaciones de LaTeX en el paquete Hmisc. Si solo desea imprimirlos como un PDF independiente, use la clase standalone
para su documento.
lo tanto, aquí está un ejemplo:
data(tli)
fm1 <- aov(tlimth ~ sex + ethnicty + grade + disadvg, data=tli)
print(xtable(fm1), file="ta.tex", floating=FALSE)
print(xtable(head(tli, n=5)), file="tb.tex", floating=FALSE)
entonces, un envoltorio tex rápida (compilar con pdflatex
):
\documentclass{article}
\usepackage{subfig}
\usepackage{graphicx}
\begin{document}
\begin{table}[ht]
\centering
\subfloat[Table x(a)]{\label{tab:tab1a}\scalebox{.5}{\input{./ta}}}\quad
\subfloat[Table x(b)]{\label{tab:tab1b}\scalebox{.5}{\input{./tb}}}
\caption{Caption about here}
\label{tab:tab1}
\end{table}
\end{document}
Aquí está el resultado:
Eliminar el comando \scalebox
para de diseño de fallas (apiladas), a menos que sean lo suficientemente angostas como para ajustarse a su tamaño predeterminado, como lo señala @David.
¡Perfecto! Gracias, chl. – user702432
@chi eliminar '\ scalebox' no apila tablas si son lo suficientemente angostas como para caber en su tamaño predeterminado. –
@David Ah, creo que tienes razón. ¡Actualicé mi respuesta en consecuencia! – chl
Ver Alan Munn's answer to a similar question on tex.stackexchange.com.
\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}
- 1. R: xtable y fechas
- 2. xtable para funciones no compatibles (con R)
- 3. R: subtítulo xtable (o comentario)
- 4. Descripción general de variables con xtable en R
- 5. Sweave xtable: cómo colocar las tablas entre texto?
- 6. Salida de xtable dividida en las tablas secundarias
- 7. Personalizar xtable
- 8. ¿Cómo imprime en stderr en R?
- 9. actualización SQL con dos tablas en Oracle
- 10. ordenando una tabla para salida de látex con xtable
- 11. Insertar en dos tablas
- 12. Adición de una línea horizontal entre las filas de una tabla de látex usando R xtable
- 13. R concatenar dos factores
- 14. uniendo dos tablas con una clave externa con nulo?
- 15. Consulta dos tablas relacionadas (Uniones)
- 16. Convierte (imprime) un archivo a PDF, ¿usando R? (en Windows)
- 17. Cómo poner una nueva línea en un encabezado de columna en una xtable en R
- 18. Exportación de tablas R a HTML
- 19. Visualización de tablas de datos en R
- 20. fusionando dos dataframes en R
- 21. Imprime un vector en R en el mismo formato utilizado para ingresarlo en R
- 22. pregunta de actualización con join en dos tablas
- 23. ¿podemos insertar en dos tablas con una única instrucción sql?
- 24. Unión de dos tablas con diferente número de columnas
- 25. Django Models y SELECT con dos o más tablas unidas?
- 26. Seleccionar datos de dos tablas con columnas idénticas
- 27. unir dos estructuras de tablas idénticas con datos diferentes
- 28. Cómo incluir un Símbolo de porcentaje en una leyenda xtable usando Sweave en R
- 29. Nombres de columna en cada página con xtable en Sweave
- 30. JUnitCore.runClasses no imprime nada
Como una mesa? Entonces 'xtable (rbind (d1, d2))' o 'xtable (cbind (d1, d2))' debería estar bien ¿no? –
Si desea mantener las tablas separadas como Xa y Xb, entonces esto se convierte en una cuestión de etiquetado de látex. Uno de los moderadores aquí debería poder migrar su pregunta. –
@SachaEpskamp 'rbind' solo funciona si ambas tablas tienen el mismo' ncol' (o para 'cbind' /' nrow'). –