Dividir la matriz de correlación en 2 tablas

Dividir la matriz de correlación en 2 tablas

¡H! Tengo una matriz de correlación de 14x14 variables, bastante grande. Si inserto mi matriz de correlación en Latex y ajusto la tabla al tamaño de la página con begin{adjustbox}{widt=\textwith}, la tabla se imprime extremadamente pequeña y ya no es agradable de leer.

¿Cómo puedo dividir la matriz de correlación en 2 tablas una al lado de la otra? Entonces, por ejemplo, ¿primero una tabla de las primeras variables de 7x7 y luego, más allá, las segundas variables de 7x7?

Este es mi código de la tabla:

    \begin{table}[!htbp] \centering 
  \caption{} 
  \label{} 
  \begin{adjustbox}{width=\textwidth}
\begin{tabular}{@{\extracolsep{5pt}} ccccccccccccccc} 
\\[-1.8ex]\hline 
\hline \\[-1.8ex] 
 & roap & id & size & age & listed & source & country & gics20 & gics25 & gics30 & gics40 & gics45 & gics50 & gics60 \\ 
\hline \\[-1.8ex] 
roap & $1$ & $0.265$ & $0.360$ & $$-$0.222$ & $0.077$ & $0.202$ & $$-$0.032$ & $$-$0.206$ & $0.268$ & $0.019$ & $$-$0.376$ & $0.310$ & $0.109$ & $$-$0.009$ \\ 
id & $0.265$ & $1$ & $0.385$ & $0.029$ & $$-$0.194$ & $$-$0.036$ & $$-$0.239$ & $$-$0.163$ & $0.114$ & $0.321$ & $$-$0.176$ & $0.102$ & $$-$0.014$ & $$-$0.358$ \\ 
size & $0.360$ & $0.385$ & $1$ & $0.126$ & $0.326$ & $$-$0.121$ & $$-$0.151$ & $$-$0.048$ & $0.138$ & $$-$0.150$ & $$-$0.033$ & $0.466$ & $$-$0.103$ & $$-$0.149$ \\ 
age & $$-$0.222$ & $0.029$ & $0.126$ & $1$ & $0.150$ & $$-$0.362$ & $$-$0.141$ & $$-$0.010$ & $$-$0.110$ & $$-$0.043$ & $0.488$ & $$-$0.103$ & $$-$0.181$ & $$-$0.127$ \\ 
listed & $0.077$ & $$-$0.194$ & $0.326$ & $0.150$ & $1$ & $0.014$ & $$-$0.134$ & $0.013$ & $0.167$ & $$-$0.560$ & $0.211$ & $0.217$ & $0.133$ & $$-$0.002$ \\ 
source & $0.202$ & $$-$0.036$ & $$-$0.121$ & $$-$0.362$ & $0.014$ & $1$ & $0.335$ & $0.164$ & $0.188$ & $$-$0.023$ & $$-$0.561$ & $0.041$ & $0.156$ & $0.100$ \\ 
country & $$-$0.032$ & $$-$0.239$ & $$-$0.151$ & $$-$0.141$ & $$-$0.134$ & $0.335$ & $1$ & $0.216$ & $$-$0.214$ & $0.139$ & $$-$0.104$ & $$-$0.037$ & $$-$0.135$ & $0.141$ \\ 
gics20 & $$-$0.206$ & $$-$0.163$ & $$-$0.048$ & $$-$0.010$ & $0.013$ & $0.164$ & $0.216$ & $1$ & $$-$0.182$ & $$-$0.269$ & $$-$0.202$ & $$-$0.124$ & $$-$0.208$ & $$-$0.097$ \\ 
gics25 & $0.268$ & $0.114$ & $0.138$ & $$-$0.110$ & $0.167$ & $0.188$ & $$-$0.214$ & $$-$0.182$ & $1$ & $$-$0.229$ & $$-$0.172$ & $$-$0.106$ & $$-$0.177$ & $$-$0.083$ \\ 
gics30 & $0.019$ & $0.321$ & $$-$0.150$ & $$-$0.043$ & $$-$0.560$ & $$-$0.023$ & $0.139$ & $$-$0.269$ & $$-$0.229$ & $1$ & $$-$0.253$ & $$-$0.156$ & $$-$0.261$ & $$-$0.122$ \\ 
gics40 & $$-$0.376$ & $$-$0.176$ & $$-$0.033$ & $0.488$ & $0.211$ & $$-$0.561$ & $$-$0.104$ & $$-$0.202$ & $$-$0.172$ & $$-$0.253$ & $1$ & $$-$0.117$ & $$-$0.196$ & $$-$0.091$ \\ 
gics45 & $0.310$ & $0.102$ & $0.466$ & $$-$0.103$ & $0.217$ & $0.041$ & $$-$0.037$ & $$-$0.124$ & $$-$0.106$ & $$-$0.156$ & $$-$0.117$ & $1$ & $$-$0.121$ & $$-$0.056$ \\ 
gics50 & $0.109$ & $$-$0.014$ & $$-$0.103$ & $$-$0.181$ & $0.133$ & $0.156$ & $$-$0.135$ & $$-$0.208$ & $$-$0.177$ & $$-$0.261$ & $$-$0.196$ & $$-$0.121$ & $1$ & $$-$0.094$ \\ 
gics60 & $$-$0.009$ & $$-$0.358$ & $$-$0.149$ & $$-$0.127$ & $$-$0.002$ & $0.100$ & $0.141$ & $$-$0.097$ & $$-$0.083$ & $$-$0.122$ & $$-$0.091$ & $$-$0.056$ & $$-$0.094$ & $1$ \\ 
\hline \\[-1.8ex] 
\end{tabular} 
\end{adjustbox}
\end{table} 

Y se imprime de la siguiente manera: Matriz de correlación impresa muy pequeña

¿Alguna sugerencia? ¡Gracias por tu ayuda!

Respuesta1

Como habrás descubierto, el uso \adjustboxno tiende a generar resultados utilizables, al menos no cuando se intenta crear tablas atractivas. Te sugiero que hagas lo siguiente en su lugar:

  • mostrar la tabla en formato horizontal, utilizando el sidewaystableentorno del rotatingpaquete;

  • utilice un tabular*entorno para garantizar que la tabla encaje dentro del bloque de texto;

  • utilice el Stipo de columna del siunitxpaquete para alinear los números en sus respectivos marcadores decimales explícitos o implícitos; y

  • utilice las macros del booktabspaquete -- \toprule, \midrule, \bottomrule-- en lugar de \hlinegenerar líneas horizontales bien espaciadas. Opcionalmente, use \addlinespacedirectivas (también proporcionadas por el booktabspaquete) para insertar un poco de espacio en blanco después de cada quinta fila aproximadamente.

ingrese la descripción de la imagen aquí

\documentclass{article}
\usepackage{booktabs,siunitx,rotating}
\begin{document}

\begin{sidewaystable} 
\setlength\tabcolsep{0pt} % make LaTeX figure out the intercolumn whitespace amount
\caption{} \label{} 
\begin{tabular*}{\textwidth}{@{\extracolsep{\fill}} l *{14}{S[table-format=-1.3]} } 
\toprule 
 & {roap} & {id} & {size} & {age} & {listed} & {source} & {country} & {gics20} & {gics25} & {gics30} & {gics40} & {gics45} & {gics50} & {gics60} \\ 
\midrule
roap & 1 & 0.265 & 0.360 & -0.222 & 0.077 & 0.202 & -0.032 & -0.206 & 0.268 & 0.019 & -0.376 & 0.310 & 0.109 & -0.009 \\ 
id & 0.265 & 1 & 0.385 & 0.029 & -0.194 & -0.036 & -0.239 & -0.163 & 0.114 & 0.321 & -0.176 & 0.102 & -0.014 & -0.358 \\ 
size & 0.360 & 0.385 & 1 & 0.126 & 0.326 & -0.121 & -0.151 & -0.048 & 0.138 & -0.150 & -0.033 & 0.466 & -0.103 & -0.149 \\ 
age & -0.222 & 0.029 & 0.126 & 1 & 0.150 & -0.362 & -0.141 & -0.010 & -0.110 & -0.043 & 0.488 & -0.103 & -0.181 & -0.127 \\ 
listed & 0.077 & -0.194 & 0.326 & 0.150 & 1 & 0.014 & -0.134 & 0.013 & 0.167 & -0.560 & 0.211 & 0.217 & 0.133 & -0.002 \\ \addlinespace % optional
source & 0.202 & -0.036 & -0.121 & -0.362 & 0.014 & 1 & 0.335 & 0.164 & 0.188 & -0.023 & -0.561 & 0.041 & 0.156 & 0.100 \\ 
country & -0.032 & -0.239 & -0.151 & -0.141 & -0.134 & 0.335 & 1 & 0.216 & -0.214 & 0.139 & -0.104 & -0.037 & -0.135 & 0.141 \\ 
gics20 & -0.206 & -0.163 & -0.048 & -0.010 & 0.013 & 0.164 & 0.216 & 1 & -0.182 & -0.269 & -0.202 & -0.124 & -0.208 & -0.097 \\ 
gics25 & 0.268 & 0.114 & 0.138 & -0.110 & 0.167 & 0.188 & -0.214 & -0.182 & 1 & -0.229 & -0.172 & -0.106 & -0.177 & -0.083 \\ 
gics30 & 0.019 & 0.321 & -0.150 & -0.043 & -0.560 & -0.023 & 0.139 & -0.269 & -0.229 & 1 & -0.253 & -0.156 & -0.261 & -0.122 \\ \addlinespace % optional
gics40 & -0.376 & -0.176 & -0.033 & 0.488 & 0.211 & -0.561 & -0.104 & -0.202 & -0.172 & -0.253 & 1 & -0.117 & -0.196 & -0.091 \\ 
gics45 & 0.310 & 0.102 & 0.466 & -0.103 & 0.217 & 0.041 & -0.037 & -0.124 & -0.106 & -0.156 & -0.117 & 1 & -0.121 & -0.056 \\ 
gics50 & 0.109 & -0.014 & -0.103 & -0.181 & 0.133 & 0.156 & -0.135 & -0.208 & -0.177 & -0.261 & -0.196 & -0.121 & 1 & -0.094 \\ 
gics60 & -0.009 & -0.358 & -0.149 & -0.127 & -0.002 & 0.100 & 0.141 & -0.097 & -0.083 & -0.122 & -0.091 & -0.056 & -0.094 & 1 \\ 
\bottomrule
\end{tabular*}
\end{sidewaystable} 
\end{document}

Apéndice: Si los márgenes de página de su documento tienen como máximo 1" de ancho, en realidad es posible mostrar la matriz de correlación en modo vertical siempre que muestre solo dos dígitos en lugar de tres después del marcador decimal. En comparación con el código anterior, todo lo que necesita Lo que tendría que hacer es (a) cambiar de a sidewaystablea un entorno normal table, y (b) indicarle a Latex que redondee los números en las 14 columnas de datos a 2 dígitos; esto último se puede lograr fácilmente ejecutando la instrucción;

\sisetup{round-mode=places,round-precision=2}

en la cima del tableentorno. No es necesario cambiar todos los demás elementos, como el uso del Stipo de columna para columnas de datos y de un entorno.tabular*

ingrese la descripción de la imagen aquí

\documentclass{article}
\usepackage[a4paper,margin=2.5cm]{geometry} % set page margins suitably
\usepackage{booktabs,siunitx}
\begin{document}
\begin{table} % <-- new: 'table' instead of 'sidewaystable'
\sisetup{round-mode=places,round-precision=2} % <-- new
\setlength\tabcolsep{0pt} 
\caption{\strut} \label{} 

% Change 'S[table-format=-1.3]' to 'S[table-format=-1.2]':
\begin{tabular*}{\textwidth}{@{\extracolsep{\fill}} l *{14}{S[table-format=-1.2]} } 
\toprule 
 & {roap} & {id} & {size} & {age} & {listed} & {source} & {country} & {gics20} & {gics25} & {gics30} & {gics40} & {gics45} & {gics50} & {gics60} \\ 
\midrule
roap & 1 & 0.265 & 0.360 & -0.222 & 0.077 & 0.202 & -0.032 & -0.206 & 0.268 & 0.019 & -0.376 & 0.310 & 0.109 & -0.009 \\ 
id & 0.265 & 1 & 0.385 & 0.029 & -0.194 & -0.036 & -0.239 & -0.163 & 0.114 & 0.321 & -0.176 & 0.102 & -0.014 & -0.358 \\ 
size & 0.360 & 0.385 & 1 & 0.126 & 0.326 & -0.121 & -0.151 & -0.048 & 0.138 & -0.150 & -0.033 & 0.466 & -0.103 & -0.149 \\ 
age & -0.222 & 0.029 & 0.126 & 1 & 0.150 & -0.362 & -0.141 & -0.010 & -0.110 & -0.043 & 0.488 & -0.103 & -0.181 & -0.127 \\ 
listed & 0.077 & -0.194 & 0.326 & 0.150 & 1 & 0.014 & -0.134 & 0.013 & 0.167 & -0.560 & 0.211 & 0.217 & 0.133 & -0.002 \\ \addlinespace
source & 0.202 & -0.036 & -0.121 & -0.362 & 0.014 & 1 & 0.335 & 0.164 & 0.188 & -0.023 & -0.561 & 0.041 & 0.156 & 0.100 \\ 
country & -0.032 & -0.239 & -0.151 & -0.141 & -0.134 & 0.335 & 1 & 0.216 & -0.214 & 0.139 & -0.104 & -0.037 & -0.135 & 0.141 \\ 
gics20 & -0.206 & -0.163 & -0.048 & -0.010 & 0.013 & 0.164 & 0.216 & 1 & -0.182 & -0.269 & -0.202 & -0.124 & -0.208 & -0.097 \\ 
gics25 & 0.268 & 0.114 & 0.138 & -0.110 & 0.167 & 0.188 & -0.214 & -0.182 & 1 & -0.229 & -0.172 & -0.106 & -0.177 & -0.083 \\ 
gics30 & 0.019 & 0.321 & -0.150 & -0.043 & -0.560 & -0.023 & 0.139 & -0.269 & -0.229 & 1 & -0.253 & -0.156 & -0.261 & -0.122 \\ \addlinespace
gics40 & -0.376 & -0.176 & -0.033 & 0.488 & 0.211 & -0.561 & -0.104 & -0.202 & -0.172 & -0.253 & 1 & -0.117 & -0.196 & -0.091 \\ 
gics45 & 0.310 & 0.102 & 0.466 & -0.103 & 0.217 & 0.041 & -0.037 & -0.124 & -0.106 & -0.156 & -0.117 & 1 & -0.121 & -0.056 \\ 
gics50 & 0.109 & -0.014 & -0.103 & -0.181 & 0.133 & 0.156 & -0.135 & -0.208 & -0.177 & -0.261 & -0.196 & -0.121 & 1 & -0.094 \\ 
gics60 & -0.009 & -0.358 & -0.149 & -0.127 & -0.002 & 0.100 & 0.141 & -0.097 & -0.083 & -0.122 & -0.091 & -0.056 & -0.094 & 1 \\ 
\bottomrule
\end{tabular*}
\end{table} 
\end{document}

información relacionada