我在我的乳胶文件中定义了以下内容:
\begin{tikzpicture}[background rectangle/.style={fill=black}, show background rectangle]
\draw[step=1, transparent] (-1, -1) grid (3, 3);
\draw[ultra thick, ->] (-1, 0) -- (3, 0);
\draw[ultra thick, ->] (0, -1) -- (0, 3);
\draw[] (2.8, -0.2) node[below] {\textbf{$x$}};
\draw[] (-0.2, 2.8) node[left] {\textbf{$y$}};
\draw[scale=1, domain=-1:sqrt(3), smooth, variable=\x, thick] plot ({\x}, {\x*\x});
\fill[white] (1, 1) circle (2pt);
\end{tikzpicture}
我想知道如何在 (3, sqrt(3)) 上创建一个节点。
我尝试了以下方法:
\node[] at (3, sqrt(3)) {A};
但是,在编译我的代码时它似乎不起作用。
答案1
正如评论中所回答的,写坐标的正确方法是
(3, {sqrt(3)})
带括号。原因是,当解析坐标时,TeX 会寻找逗号和右括号,因此当它看到
(3, sqrt(3))
它会因后面的括号而感到困惑3
,导致解析失败。您必须将不属于坐标语法的括号“隐藏”在括号中。(逗号也会发生同样的情况)。
因此您可以有(1, 3+3)
但不是(1, add(3,3))
--- 在第二种情况下您需要大括号。
当你解析时,domain=-1:sqrt(3)
不会发生这种情况——Ti钾Z 查找冒号后的数字,以逗号或选项列表末尾 ( ]
) 分隔。如果您需要将逗号或]
放入参数中,则需要一组括号。