有人能帮我用 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
这不是一个控制序列,而只是一个裸词。