Нарисуйте длинную стрелку рядом с несколькими строками табличных данных.

Нарисуйте длинную стрелку рядом с несколькими строками табличных данных.

У меня есть следующая таблица, которую я использую для преподавания пределов на уроках исчисления (не волнуйтесь, если вы не знаете, что это такое):

\begin{tabular}{l|l}
  \bm{x}  & \bm{h(x)} \\
  \hline
    1.9    & 3.61   \\
    1.99   & 3.9601 \\
    1.999  & 3.9960 \\
    1.9999 & 3.9996 \\
    \hline
    2.0001 & 4.0004 \\
    2.001  & 4.004  \\
    2.01   & 4.0401 \\
    2.1    & 4.41   \\
    \hline
\end{tabular}

На занятиях я указываю, что числа в левом столбце приближаются к 2 по мере продвижения вниз по столбцу, рисуя стрелку слева от первого столбца на протяжении четырех строк и записывая «2» внизу (только я не умею рисовать на экранах).

Я также обращаю внимание на то, что нижняя половина таблицы, левая сторона, приближается к 2 по мере того, как мы поднимаемся вверх, проводя стрелку вверх по строкам (слева от них).

Правый столбец приближается к 4, и я указываю на это (или указываю, если бы мог нарисовать на экране), рисуя стрелку вниз справа от правого столбца и т. д.

Как нарисовать стрелку над несколькими строками справа или слева от этих столбцов, чтобы показать прогрессию чисел?

решение1

введите описание изображения здесь

\documentclass{article}

\let\bm\textbf

\usepackage{tikz}
\usetikzlibrary{tikzmark,calc}

\begin{document}

\begin{tabular}{cl|lc}
  &\bm{x}  & \bm{h(x)} \\
  \cline{2-3}
    \tikzmark{a}&1.9    & 3.61&\tikzmark{aa}   \\
    &1.99   & 3.9601& \\
    &1.999  & 3.9960 &\\
    \tikzmark{b}&1.9999 & 3.9996&\tikzmark{bb} \\
    \cline{2-3}
    &2.0001 & 4.0004& \\
    &2.001  & 4.004 & \\
    &2.01   & 4.0401& \\
    \tikzmark{c}&2.1    & 4.41&\tikzmark{cc}   \\
    \cline{2-3}
\end{tabular}

\begin{tikzpicture}[overlay,remember picture]
\draw[->,line width=3pt, color=red] ($(pic cs:a)+(0pt,.5ex)$) to ($(pic cs:b)+(0pt,-.1ex)$);
\node[color=red] at ($(pic cs:b)+(0pt,-1ex)$) {\Large 2};
\draw[->,line width=3pt, color=red] ($(pic cs:c)+(0pt,.5ex)$) to ($(pic cs:b)+(0pt,-2.5ex)$);

\draw[->,line width=3pt, color=red] ($(pic cs:aa)+(0pt,.5ex)$) to ($(pic cs:bb)+(0pt,-.1ex)$);
\node[color=red] at ($(pic cs:bb)+(0pt,-1ex)$) {\Large 4};
\draw[->,line width=3pt, color=red] ($(pic cs:cc)+(0pt,.5ex)$) to ($(pic cs:bb)+(0pt,-2.5ex)$);

\end{tikzpicture}

\end{document}

решение2

введите описание изображения здесь

Если это то, что вам нужно, то вот мой код:

\documentclass{article}      
\usepackage{multirow,tikz,bm}

\def\limitarrow#1{%
\begin{tikzpicture}
\draw[->] (0,1.5) to (0,0.25);
\node at (0,0) {#1};
\draw[->] (0,-1.5) to (0,-0.25);
\end{tikzpicture}}

\begin{document}
\begin{tabular}{l|l|l|l}
   &  $\bm{x}$  & $\bm{h(x)}$ &\\
\hline
\multirow{8}{*}{\limitarrow{2}} & 1.9    & 3.61 & \multirow{8}{*}{\limitarrow{4}}\\
   & 1.99       & 3.9601      & \\
   & 1.999      & 3.9960      & \\
   & 1.9999     & 3.9996      & \\
   \cline{2-3}
   & 2.0001     & 4.0004      &\\
   & 2.001      & 4.004       &\\
   & 2.01       & 4.0401      &\\
   & 2.1        & 4.41        &\\
\hline
\end{tabular}
\end{document}

Связанный контент