Tikz 节点或 TikZmark 节点,哪个适合该图?

Tikz 节点或 TikZmark 节点,哪个适合该图?

我想要绘制下面的图:

在此处输入图片描述

但我不知道从哪里开始?我应该使用什么普通 TikZ 节点\node) 或者TikZmark 节点( \tikzmarknode)?我不是tikz-pgf包装方面的专家。希望得到您的帮助。

添加:

我试过:

\documentclass{article}

\usepackage{tikz}
\usetikzlibrary{tikzmark}

\begin{document}

\large 
\[
    \tikzmarknode{v1}{1}\tikzmarknode{v2}{4}\newline
    \tikzmarknode{A}{3}\tikzmarknode{B}{\raisebox{1em}{2}}\tikzmarknode{C}{4}\tikzmarknode{D}{5}\tikzmarknode{E}{6}\tikzmarknode{F}{3}
\]

\begin{tikzpicture}[remember picture,overlay]
    \tikzset{
        every node/.style={outer sep=2pt},
        lab/.style={font=\tiny,inner sep=0pt}}
        
        \draw[red] (B) to[out=90,in=90] node[lab,midway,above]{} (v2) ;  

\end{tikzpicture}
\end{document}

答案1

使用\tikzmarknode是个好主意。但首先你需要画出没有箭头的除法问题。 Anarray非常适合这个。语法{*{12}{c@{\,}}}将每列居中对齐,但将列间距减小到 0,然后\,在每列之间添加一个小的细间距 ( )。*{12}意味着重复 12 次。(目前你只有 7 列,但也许你会添加更多。)

在此处输入图片描述

在里面放置减号\mathllap可以防止它们在其列中添加空间。

绘制除法问题后,将要作为节点的数字放入 中。然后在带有选项 的\tikzmarknode中,使用您想要的任何选项(例如、、等)绘制从一个节点到另一个节点的箭头。您可以在其中一个箭头的中间放置一个节点(我称之为)。tikzpictureremember picture, overlaytikzlooseness=in=out=M

\documentclass{article}

\usepackage{mathtools} % needed for \mathllap
\usepackage{tikz}
\usetikzlibrary{tikzmark}

\begin{document}

\[
\begin{array}{*{12}{c@{\,}}}
& & &1&\tikzmarknode{B}{4}& & &\\ \cline{3-8}
3&\tikzmarknode{A}{2}&\raisebox{.6pt}{\kern-.56pt)}&4&5&\tikzmarknode{C}{6}&3\\
&&&\smash{\vdots}&\\ \cline{4-8}
&&&1&3\\
&&&\mathllap{-}1&2\\ \cline{4-8}
&&&&1&\tikzmarknode{D}{6}\\
&&&&&\mathllap{-}\tikzmarknode{E}{8}\\ \cline{4-8}
&&&&&8
\end{array}
\]

\begin{tikzpicture}[remember picture, overlay, >=latex, shorten >=2pt, shorten <=2pt]
\draw[->](C)--(D);
\draw[<->, looseness=2.5](A.north)to[out=90, in=90]node[pos=.7](M){}(B);
\draw[->, looseness=1.5](M.center)to[out=60, in=0](E.east);
\end{tikzpicture}

\end{document}

相关内容