
Me preguntaba si es posible crear tablas personalizadas en LaTeX similares a la que se muestra en la imagen a continuación. He buscado extensamente en línea, pero no pude encontrar ninguna solución satisfactoria. Espero que puedas ayudarme
ese es mi intento
\documentclass{article}
\usepackage{xcolor}
\usepackage{tabularray}
\definecolor{rowcol}{rgb}{0.7, 0.7, 0.7}
\begin{document}
\begin{table}
\centering
\begin{tblr}{
colspec={Q[c,m,wd=3cm] *{4}{Q[c,m]}},
cells={font=\large},
cell{1}{1}={r=2}{},
cell{1}{2}={c=3}{},
row{7-8}={bg=rowcol},
hline{1-Z}={1}{-}{leftpos=0, rightpos=0},
hline{3}={2}{-}{leftpos=0, rightpos=0},
vlines,
vline{2}={2}{-}{},
}
& Countries \\
& 1 & 2 & $\ldots$ & N \\
Inputs & $Z_{11}$ & $Z_{12}$ & $\ldots$ & $Z_{1N}$ \\
Inputs & $Z_{21}$ & $Z_{22}$ & $\ldots$ & $Z_{2N}$ \\
Inputs & $\vdots$ & $\vdots$ & $\vdots$ & $\vdots$ \\
Inputs & $Z_{N1}$ & $Z_{N2}$ & $\ldots$ & $Z_{NN}$ \\
Value Added & VA$_1$ & VA$_2$ & $\ldots$ & VA$_4$ \\
Total Output & $X_1$ & $X_2$ & $\ldots$ & $X_4$ \\
\end{tblr}
\caption{Caption}
\end{table}
\end{document}
¿Podría mejorar la legibilidad (por ejemplo, la palabra "Entrada" no debe repetirse y parece que la columna $N$ está separada) y asegurarse de que la tabla no esté flotando?
Respuesta1
¿Algo como esto?
Utilicé center
el entorno (con \captionof
) para evitar flotar.
\documentclass{article}
\usepackage{xcolor}
\usepackage{tabularray}
\usepackage{caption}
\definecolor{rowcol}{rgb}{0.7, 0.7, 0.7}
\begin{document}
\begin{center}
\begin{tblr}{
colspec={Q[c,m,wd=3cm]Q[c,m] *{4}{Q[.7cm,c,m]}},
cells={font=\large},
row{Y-Z}={bg=rowcol},
hline{2,X-Z}={1-Z}{leftpos=0, rightpos=0},
hline{3-W}={3-Z}{leftpos=0, rightpos=0},
vline{3,Z}={1-Z}{solid},
vline{1,2,4-Y}={2-Z}{solid},
rowsep=6pt,
}
& Countries & 1 & 2 & $\ldots$ & N \\
\SetCell[r=4]{c,m}Inputs &1& $Z_{11}$ & $Z_{12}$ & $\ldots$ & $Z_{1N}$ \\
&2& $Z_{21}$ & $Z_{22}$ & $\ldots$ & $Z_{2N}$ \\
& $\vdots$ & $\vdots$ & $\vdots$ & $\vdots$ & $\vdots$ \\
&$N$& $Z_{N1}$ & $Z_{N2}$ & $\ldots$ & $Z_{NN}$ \\
\SetCell[c=2]{l}Value Added && VA$_1$ & VA$_2$ & $\ldots$ & VA$_4$ \\
\SetCell[c=2]{l}Total Output && $X_1$ & $X_2$ & $\ldots$ & $X_4$ \\
\end{tblr}
\captionof{table}{Caption}
\end{center}
\end{document}
Respuesta2
Con {NiceTabular}
de nicematrix
.
\documentclass{article}
\usepackage{geometry}
\usepackage{xcolor}
\usepackage{nicematrix}
\begin{document}
\renewcommand{\arraystretch}{1.4}
\begin{NiceTabular}{w{c}{2cm}cccw{c}{1cm}c}[hvlines,corners]
& countries & 1 & 2 & $\cdots$ & $N$ \\
\Block{4-1}{Inputs} & $1$ & $Z_{11}$ & $Z_{12}$ & $\cdots$ & $Z_{1N}$ \\
& $2$ & $Z_{21}$ & $Z_{22}$ & $\cdots$ & $Z_{2N}$ \\
\\[1cm]
% & $\vdots$ & $\vdots$ & $\vdots$ & & $\vdots$ \\
& $N$ & $Z_{N1}$ & $Z_{N2}$ & $\cdots$ & $Z_{NN}$ \\
\Block[l]{1-2}{Value Added} & & VA$_1$ & VA$_2$ & $\cdots$ & VA$_4$ \\
\Block[l]{1-2}{Total output} & & $X_1$ & $X_2$ & $\cdots$ & $X_4$ \\
\CodeAfter
\line[shorten=12pt]{3-2}{5-2}
\line[shorten=12pt]{3-3}{5-3}
\line[shorten=12pt]{3-4}{5-4}
\line[shorten=12pt]{3-6}{5-6}
\end{NiceTabular}
\end{document}
Necesita varias compilaciones (porque nicematrix
utiliza nodos PGF/TikZ bajo el capó).