我想知道是否有可能在 LaTeX 中创建类似于下图所示的自定义表格。我在网上搜索了很多,但找不到任何令人满意的解决方案。我希望你能帮助我
这是我的尝试
\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}
您能否增强可读性(例如“输入”一词不应重复,并且看起来$N$列是分离的)并确保表格不浮动?
答案1
像这样吗?
我使用center
环境(带有\captionof
)来避免浮动。
\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}
答案2
与。{NiceTabular}
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}
您需要进行多次编译(因为nicematrix
在后台使用了 PGF/TikZ 节点)。