我有下表,其中 5 行,第一列为文本,其他 4 列为数据:
\newenvironment{mytable}[1][h!]{\begin{table}[#1]\centering\small}{\end{table}}
\begin{mytable}
\begin{center}
\begingroup
\setlength{\tabcolsep}{3pt} % Default value: 6pt
\renewcommand{\arraystretch}{1} % Default value: 1
\begin{tabular}{|c|c|c|c|c|}
\hline
\addstackgap{Redshift central bin} & 1.0 & 1.2 & 1.4 & 1.65 \\ \hline
\addstackgap{$\mathrm{d}N / \mathrm{d}\Omega\mathrm{d}z\left[\mathrm{deg}^{-2}\right]$} & 1815.0 & 1701.5 & 1410.0 & 940.97 \\ \hline
\addstackgap{$\Delta z$ : width of bin} & 0.2 & 0.2 & 0.2 & 0.3 \\ \hline
\addstackgap{$\rho_{gal}$\,(gal.arcmin$^{-2}$}) & 0.1008 & 0.0945 & 0.0783 & 0.0784 \\ \hline
\addstackgap{$\rho_{gal,tot}$\,(gal.arcmin$^{-2}$)} &
\multicolumn{1}{c}{} 0.3521 &
\multicolumn{1}{c}{} &
\multicolumn{1}{c}{} & \\
\hline
\end{tabular}
\endgroup
\end{center}
\caption{Spectroscopic specifications from \citetalias{IST:paper1} with 4 bins}
\label{density1}
\end{mytable}\\
效果图如下:
我想保留相同的格式,但我应该将值放在0.3521
最后一行、第一列和第四列之间的中心。
有人能知道如何进行这种定心吗?
答案1
供参考,这里是使用构建该表的方法nicematrix
。
\documentclass{article}
\usepackage{nicematrix}
\begin{document}
\begin{table}
\centering
\renewcommand{\arraystretch}{1.4}
\begin{NiceTabular}{ccccc}[hvlines]
Redshift central bin & 1.0 & 1.2 & 1.4 & 1.65 \\
$\mathrm{d}N / \mathrm{d}\Omega\mathrm{d}z\left[\mathrm{deg}^{-2}\right]$ & 1815.0 & 1701.5 & 1410.0 & 940.97 \\
$\Delta z$ : width of bin & 0.2 & 0.2 & 0.2 & 0.3 \\
$\rho_{gal}$\,(gal.arcmin$^{-2}$) & 0.1008 & 0.0945 & 0.0783 & 0.0784 \\
$\rho_{gal,tot}$\,(gal.arcmin$^{-2}$) & \Block{1-4}{0.3521}
\end{NiceTabular}
\caption{Spectroscopic specifications from XXXXXXX with 4 bins}\label{density1}
\end{table}
\end{document}
答案2
我想向您展示一个解决方案tabularray
:
\documentclass{article}
\usepackage{tabularray}
\newenvironment{mytable}[1][h]{\begin{table}[#1]\centering\small}{\end{table}}
\begin{document}
\begin{mytable}
\begin{tblr}{
colspec={*5{c}},
hlines,vlines,
rows={rowsep+=2pt},
colsep=3pt
}
Redshift central bin & 1.0 & 1.2 & 1.4 & 1.65 \\
$\mathrm{d}N / \mathrm{d}\Omega\mathrm{d}z\left[\mathrm{deg}^{-2}\right]$ & 1815.0 & 1701.5 & 1410.0 & 940.97 \\
$\Delta z$ : width of bin & 0.2 & 0.2 & 0.2 & 0.3 \\
$\rho_{gal}$\,(gal.arcmin$^{-2}$) & 0.1008 & 0.0945 & 0.0783 & 0.0784 \\
$\rho_{gal,tot}$\,(gal.arcmin$^{-2}$) &
\SetCell[c=4]{c} 0.3521 &&&\\
\end{tblr}
\caption{Spectroscopic specifications from XXXXXXX with 4 bins}\label{density1}
\end{mytable}
\end{document}
但是,按照 frabjous 的建议,使用 MWE \multicolumn{4}{c|}{0.3521}
:
\documentclass{article}
\usepackage{stackengine}
\newenvironment{mytable}[1][h]{\begin{table}[#1]\centering\small}{\end{table}}
\begin{document}
\begin{mytable}
%\begin{center}<--- no, you're already using \centering and see https://tex.stackexchange.com/questions/23650/when-should-we-use-begincenter-instead-of-centering
%\begingroup<--- Why this? you're already in a group
\setlength{\tabcolsep}{3pt} % Default value: 6pt
\renewcommand{\arraystretch}{1} % Default value: 1
\begin{tabular}{|c|c|c|c|c|}
\hline
\addstackgap{Redshift central bin} & 1.0 & 1.2 & 1.4 & 1.65 \\ \hline
\addstackgap{$\mathrm{d}N / \mathrm{d}\Omega\mathrm{d}z\left[\mathrm{deg}^{-2}\right]$} & 1815.0 & 1701.5 & 1410.0 & 940.97 \\ \hline
\addstackgap{$\Delta z$ : width of bin} & 0.2 & 0.2 & 0.2 & 0.3 \\ \hline
\addstackgap{$\rho_{gal}$\,(gal.arcmin$^{-2}$)} & 0.1008 & 0.0945 & 0.0783 & 0.0784 \\ \hline
\addstackgap{$\rho_{gal,tot}$\,(gal.arcmin$^{-2}$)} & \multicolumn{4}{c|}{0.3521} \\
\hline
\end{tabular}
%\endgroup
%\end{center}
\caption{Spectroscopic specifications from XXXXXXX with 4 bins}\label{density1}
\end{mytable}%\\<--- don't use \\ outside tables
\end{document}