节点语法

节点语法

有人能帮我用 Latex 画出下面的图片吗(只使用 1 张图片)?非常感谢您的帮助。

在此处输入图片描述

答案1

以下是如何开始的示例。我认为它应该足够清楚地说明如何继续获取所需的图表。

\documentclass[border=10pt]{standalone}
\usepackage{tikz}
\usetikzlibrary{calc}
\begin{document}

\begin{tikzpicture}[my midway label/.style={midway,yshift=1.5in}]

  %% case 1
  \node[anchor=east] (A/left)         at (0,0)                  {$x$};
  \node[anchor=west] (A/right)        at ($(A/left)+(1in,0)$)   {$x$};
  \node[anchor=west] (A/right/up/1)   at ($(A/right)+(0,1in)$)  {$x+dx$};
  \node[anchor=west] (A/right/down/1) at ($(A/right)+(0,-1in)$) {$x-dx$};

  \path (A/left) -- (A/right) node [my midway label] {Case 1};

  \draw[blue] (A/left) -- (A/right);
  \draw[red]  (A/left) -- (A/right/up/1.west);
  \draw[red]  (A/left) -- (A/right/down/1.west);

  %% case 2
  \node[anchor=east] (B/left)         at ($(A/right)+(1in,0)$) {$x$};
  \node[anchor=west] (B/right)        at ($(B/left)+(1in,0)$)  {$x$};

  \path (B/left) -- (B/right) node [my midway label] {Case 2};

  \draw[blue] (B/left) -- (B/right);
\end{tikzpicture}

\end{document}

在此处输入图片描述

@clement 建议还有其他方法可以做到这一点。但这种方法将有助于您熟悉 TikZ 的一些基础知识。

我将在这里解释一些细节:

节点语法

\node[<optional arguments>] (<optional node name>) at (<position>) {<content>};

这个语法的一部分不能省略的是内容。

我利用库的强大功能calc来帮助将节点彼此相对放置。这就是我写下以下内容时发生的情况:

at ($(<previously defined node name>)+(<vector>)$)

当我打开tikzpicture环境时,我定义了自己的私有风格。这是一种帮助管理图片的方法。我的想法是,我将在路径上的两点之间定义一个节点,然后将其沿 $y$ 方向移动。

在这种情况下,我使用了路径语法的特定实例:

\path (<1st node name>) -- (<2nd node name>) node[<optional argument] {<content>};

请注意,在这种情况下,node这不是一个控制序列,而只是一个裸词。

相关内容