似乎无法强制将标题置于桌面环境之上

似乎无法强制将标题置于桌面环境之上

我定义了一个NiceTabular,稍后将由 tikz 覆盖,最终将其插入到表环境中。MWE 如下所示。

\documentclass{article}
\usepackage{nicematrix,booktabs,tikz}

\begin{document}

\begin{NiceTabular}{c|c|c|c}[name=R]
    \hline
    F & R1  & R2 & R3\\
    \hline
    40  & 2.033 & 2.033 & 2.033 \\
    1e3 & 2.033 & 2.033 & 2.034 \\
    1e4 & 2.036 & 2.070 & 2.179 \\
    1e5 & 3.700 & 3.738 & 5.756 \\
    1e6 & 10.31 & 11.40 & 21.57 \\
    1e7 & 31.14 & 38.17 & 78.99 \\
    \hline
\end{NiceTabular}

\begin{table}
    \caption{Comparing values.}
    \label{tab:compareR}
    \centering
    \begin{tikzpicture}[remember picture,overlay]
    \draw[orange,very thick,dashed](R-2-2.north west) -| (R-2-3.north east)-- (R-7-3.south east)-|(R-7-2.south west)--(R-2-2.north west);
    \end{tikzpicture}   
\end{table} 

\end{document}

我似乎无法弄清楚如何强制将标题置于表格顶部。实际上,一旦插入到我的文档中,标题就会位于第 (n-1) 页 - 文本插入 - 然后表格位于第 (n) 页...

我究竟做错了什么?

答案1

正如评论和答案中所说,应该{NiceTabular}放在 中{table}。我发布这个答案是为了展示如何简化 Tikz 代码(带有 的 Tikz 指令rectangle就足够了)。

\documentclass{article}
\usepackage{nicematrix,tikz}

\begin{document}
\begin{table}
\centering
\caption{Comparing values.}
\label{tab:compareR}
\begin{NiceTabular}{c|c|c|c}
    \hline
    F & R1  & R2 & R3\\
    \hline
    40  & 2.033 & 2.033 & 2.033 \\
    1e3 & 2.033 & 2.033 & 2.034 \\
    1e4 & 2.036 & 2.070 & 2.179 \\
    1e5 & 3.700 & 3.738 & 5.756 \\
    1e6 & 10.31 & 11.40 & 21.57 \\
    1e7 & 31.14 & 38.17 & 78.99 \\
    \hline
    \CodeAfter
    \tikz \draw [orange,very thick,dashed]
        (2-2.north west) rectangle (7-3.south east) ;
\end{NiceTabular}
\end{table} 

\end{document}

上述代码的输出

答案2

正如@Qrrbrbirlbel 在评论中指出的那样,您需要将NiceTabular环境里面环境table——以及\caption声明。

在此处输入图片描述

\documentclass{article}
\usepackage{nicematrix,tikz}

\begin{document}
\begin{table}
\centering
\caption{Comparing values.}
\label{tab:compareR}
\begin{NiceTabular}{c|c|c|c}[name=R]
    \hline
    F & R1  & R2 & R3\\
    \hline
    40  & 2.033 & 2.033 & 2.033 \\
    1e3 & 2.033 & 2.033 & 2.034 \\
    1e4 & 2.036 & 2.070 & 2.179 \\
    1e5 & 3.700 & 3.738 & 5.756 \\
    1e6 & 10.31 & 11.40 & 21.57 \\
    1e7 & 31.14 & 38.17 & 78.99 \\
    \hline
\end{NiceTabular}

\begin{tikzpicture}[remember picture,overlay]
\draw[orange,very thick,dashed]
    (R-2-2.north west) -| 
    (R-2-3.north east)-- 
    (R-7-3.south east)-|
    (R-7-2.south west)--
    (R-2-2.north west);
\end{tikzpicture}   
\end{table} 

\end{document}

相关内容