在表格旁边放置一个箭头

在表格旁边放置一个箭头

我有一张表格。表格中的每一行代表某一时间点的数据。下一行代表后续时间的数据。

为了说明这一点,我想在表格的侧面(这并不重要)画一个箭头,指向下方,标有“时间”之类的内容。

我该如何做呢?

答案1

您可以使用\Downarrow放置双箭头,或\downarrow放置单箭头。应用\left ... \right将允许其缩放到表格的高度。

\rotatebox[origin=c]{90}{time}可以通过以下方式添加文本包裹graphicx

在此处输入图片描述

笔记:

  • 假设您只想要左侧的箭头,那么您需要确保将表格末尾的替换\right\downarrow为。同样,如果您只想要右侧的箭头,请将 替换为。\right.\left\Downarrow\left.

代码:

\documentclass{article}
\usepackage{graphicx}

\begin{document}
$\rotatebox[origin=c]{90}{time}%
\left\Downarrow% Use `\left.` if don't want arrow on this side.
\begin{tabular}{r r}
 1:00 & 2 \\
 3:00 & 4 \\
 5:00 & 6 \\
 7:00 & 8 \\
 8:00 & 10 \\
\end{tabular}
\right\downarrow%  Use `\right.` if don't want arrow on this side.
\rotatebox[origin=c]{90}{time}$
\end{document}

答案2

以下代码包含两个选项;第一个选项不使用任何特殊符号,只是添加/time(incr.)到列标题以指示增加的时间序列顺序。第二个是一个TikZ基础解决方案:

\documentclass{article}
\usepackage{booktabs}
\usepackage{tikz}
\usetikzlibrary{calc}

\newcommand\tikzmark[1]{%
  \tikz[overlay,remember picture] \coordinate (#1);}

\begin{document}

\noindent\begin{tabular}{lc}
\toprule
head1 & data/time(incr.) \\
\midrule
text & 3 \\
text & 2 \\
text & 1 \\
\bottomrule
\end{tabular}

\vspace{1cm}

\noindent\begin{tabular}{lc}
\toprule
head1 & data \\
\midrule
text & 3\tikzmark{start}\\
text & 2 \\
text & 1\tikzmark{end} \\
\bottomrule
\end{tabular}

\begin{tikzpicture}[overlay,remember picture]
    \draw[->] let \p1=(start), \p2=(end) in ($(\x1,\y1)+(0.8,0.2)$) -- node[label=right:time] {} ($(\x1,\y2)+(0.8,0)$);
  \end{tikzpicture}

\end{document}

在此处输入图片描述

答案3

这是一个{NiceTabular}使用 的解决方案nicematrix

\documentclass[letterpaper]{book}
\usepackage{nicematrix,tikz,booktabs}

\begin{document}

\NiceMatrixOptions{nullify-dots,xdots/horizontal-labels}

\begin{NiceTabular}{cc}[first-row,last-col]
\toprule
head1 & date \\
\midrule
text & 3 & \Vdots[line-style={solid,->}]^{\text{time}}\\
text & 2 \\
text & 1 \\
\bottomrule
\end{NiceTabular}

\end{document}

您可以根据需要设置任意数量的行,而无需更改箭头的代码。

上述代码的输出

相关内容